busybox文件系统制作及分享

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

如何使用busybox制作文件系统,在qemu中使用。我看了一些制作文章,写的不是很全,有一些点需要注意。下面分享制作过程。

一、内核编译

从kernel.org中下载源码,
编译时
make menuconfig
在菜单中选择 改为65535。退出保存
在这里插入图片描述
然后编译内核 make -j128 -s

二、使用busybox制作文件系统

从 https://busybox.net/downloads/ 下载
解压 tar -jxvf xx.tar.bz2
然后编译

mkdir build
make O=build menuconfig
注意选择静态编译,否则后面可能会panic
在这里插入图片描述

cd build
make -j4
make install
编译后执行

创建文件夹
mkdir -pv initramfs/x86_64_busybox
cd initramfs/x86_64_busybox/
mkdir -pv {bin,sbin,etc,proc,sys,usr/{bin,sbin}}
cp -av …/…/busybox-1.32.0/build/_install/* .

initramfs需要一个init程序,可以写一个简单的shell脚本作为init,内容如下
代码如下(示例):
#!/bin/sh
mount -t proc none /proc
mount -t sysfs none /sys
echo -e “\nBoot took $(cut -d’ ’ -f1 /proc/uptime) seconds\n”
exec /bin/sh

然后修改执行权限
chmod 777 init

将x86_64_busybox目录下的内容打包归档为cpio文件,供linux内核在做initramfs启动时执行,打包为cpio文件的命令为
find . -print0 | cpio --null -ov --format=newc | gzip -9 > …/initramfs-busybox-x86_64.cpio.gz

执行
qemu-system-x86_64 -smp 2 -m 1024M -kernel /源码目录/arch/x86_64/boot/bzImage -nographic -append “root=/dev/ram0 rw console=ttyS0 init=/linuxrc” -initrd /刚刚制作的文件系统目录/initramfs-busybox-x86_64.cpio.gz

总结

注意修改65535 和静态编译,然后是加给文件系统可执行权限,如果启动不了的话。
根文件系统分享在百度网盘分享一下 全套内容。包括文件系统,和内核,脚本自己改一下路径即可。
链接:https://pan.baidu.com/s/1_dn0oJx6HaeMa1Nn4Tm-7w
提取码:1234
主要参考 https://blog.csdn.net/fantasy_wxe/article/details/108418822

  • 21
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,我会尽力回答你的问题。首先,busybox是一个非常小巧的程序集合,它集成了许多常用的Linux工具,可以用来替代传统的Linux命令行工具,从而使得系统的启动时间更快、占用的空间更小。基于busybox的根文件系统可以使得系统更加轻量级,并且可以方便地定制。下面是实现基于busybox的根文件系统的步骤: 1. 下载busybox源代码,并编译生成busybox可执行文件。你可以从busybox的官网上下载源代码,然后使用make命令进行编译。 2. 创建一个新的目录作为根文件系统的挂载点。你可以使用mkdir命令创建一个空目录。 3. 将busybox可执行文件复制到根文件系统目录中。你可以使用cp命令将busybox可执行文件复制到根文件系统目录中。 4. 在根文件系统目录中创建必要的目录和文件。根据你的需求,你可以使用mkdir和touch命令创建必要的目录和文件。 5. 创建一个init脚本来启动系统。init脚本是系统的启动脚本,用来初始化系统并启动其他进程。你可以使用vi或者nano等编辑器创建init脚本。 6. 将根文件系统目录打包成一个镜像文件。你可以使用tar命令将根文件系统目录打包成一个tar包,然后使用mkfs命令将tar包转换成一个镜像文件。 7. 将镜像文件烧录到SD卡或者其他存储介质中。你可以使用dd命令将镜像文件写入到SD卡或者其他存储介质中。 以上就是基于busybox的根文件系统制作的基本步骤,你可以根据你的需求进行定制和修改。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值