
环境
WSL(Ubuntu 22.04)
创建磁盘映像
可以使用fallocate
为磁盘映像分配一块空间,或者使用dd if=/dev/zero of=$img bs=1M count=$size_in_MB
直接得到一个大小为$size_in_MB
大小的文件。
使用mkfs.ext4
格式化映像文件,并使用mount -o loop $img mnt
将文件挂载。
如果想要在磁盘映像中分区,则可以先使用fdisk
或cfdisk
对磁盘映像进行分区,然后使用losetup -fP $img
将文件挂载为回环设备。这里-f
参数表示自动寻找可以挂载的回环设备号,-P
参数表示探测文件中的分区并分别挂载为回环设备。挂载为回环设备后,再使用mount $loop1 $mnt1
等命令挂载回环设备。
构建busybox
下载busybox源码并构建,这里使用的是busybox-1.36.1版本
这里采用的构建选项有
构建静态文件:
Symbol: STATIC [=y]
Prompt: Build static binary (no shared libs)
Defined at Config.in:362
Location:
-> Settings
这个版本默认支持了Unicode,可以不用更改
Symbol: UNICODE_SUPPORT [=y]
Prompt: Support Unicode
Defined at libbb/Config.in:311
Location:
-> Settings
添加了Unicode宽字符支持
Symbol: UNICODE_WIDE_WCHARS [=y]
Prompt: Allow wide Unicode characters on output
Defined at libbb/Config.in:390
Depends on: UNICODE_SUPPORT
Location:
-> Settings
-> Support Unicode (UNICODE_SUPPORT [=y])
其他构建选项均可以不更改
使用make
构建后,再使用make install
即可将完整的busybox、busybox符号链接等文件安装到busybox源码