准备:创建rootfs目录,用于保存文件系统
#mkdir rootfs
1、在rootfs中创建一些必要的目录
#mkdir bin dev etc lib proc sbin sys usr mnt tmp var
#mkdir usr/bin usr/lib usr/sbin lib/modules
2、创建设备文件
#cd rootfs/dev
#mknod -m 666 console c 5 1
#mknod -m 666 null c 1 3
3、加入配置文件(配置文件与体系结构无关)
#cp etc/* rootfs/etc -rf
4、进入自己的linux内核目录添加内核模块
#cd .../linux
#make modules ARCH=arm CROSS_COMPILE=arm-linux-
#make modules_install ARCH=arm INSTALL_MOD_PATH=.../rootfs
5、编译、安装busybox
5.1、配置busybox
#cd .../busybox
#make menuconfig
Busybox Settings->build Options->
选中“Build BusyBox as a static binary”
Cross Compiler prefix选项中填入arm-linux-
Busybox Settings->Installation Options->
选中“Don't use /usr”避免busybox被安装到宿主机的/usr目录下
BusyBox installation prefix中填入/xxx/rootfs(自己rootfs的绝对地址),表明编译后busybox的安装位置
退出并保存
5.2、编译busybox
#make
#make install
进入自己的根文件系统目录.../rootfs
#cd .../rootfs
#ls
#bin dev etc lib linuxrc mnt proc sbin sys tmp usr var
1、在rootfs/中创建一个到rootfs/bin的软连接(千万别连到宿主机的/bin)
#cd .../rootfs
#ln -s ./bin/busybox init
#ls
#bin dev etc init lib linuxrc mnt proc sbin sys tmp usr var
到此根文件系统制作完毕.../rootfs便是根文件系统的目录