使用busybox制作根文件系统
1、Linux內核啓動之後,第一個掛載的文件系統,称为根文件系统。根文件系统由基本的she'll命令、各种库、字符设备、配置脚本组成。它提供了根目录/。RFS(root file )可以放在nor、nand flash、SD卡、磁盘、网络空间上。
2、在Linux文件系统中,计算机对应的就是根文件系统。bin里面存放了各种命令文件,lib里面存放了各种库,dev 目录存放了各种设备。etc文件下面由配置文件和配置脚本等。
嵌入式文件系统相对简单。工具来制作。
3、安装过程:
上一篇启动Linux内核成功后,提示根文件系统挂载失败。本篇制作根文件系统。
获得编译源文件 wget
解压缩 tar xjvf -1.27.2.tar.bz2
进入解压后的目录 cd -1.27.2
依次执行以下命令:
ARCH=arm
=arm-linux--
make #配置开发板
make =arm-linux-- #编译
make =arm-linux-- #编译
在 文件夹下面查看是否生成相应的需要的文件
注:cp命令的相关说明
-p :连同档案的属性一起复制过去,而非使用预设属性;
-r :递归持续复制,用于目录的复制行为;
在/home/lzk/下创建文件夹:
sudo mkdir
将上述文件夹下生成的命令文件等拷贝到文件夹下。
sudo cp -r -1.2.7.1//* /
从工具链中复制运行库到lib目录下(首先创建lib目录)
sudo cp -p /usr/arm-linux-/lib/* //lib
创建4个tty终端设备(c代表字符设备,4是主设备号,1~4分别是次设备号)
sudo mkdir -p /dev
sudo mknod /dev/tty1 c 4 1
sudo mknod /dev/tty2 c 4 2
sudo mknod /dev/tty3 c 4 3
sudo mknod /dev/tty4 c 4 4
创建终端和回收站
sudo mknod -m 666 c 5 1
sudo mknod -m 666 null 1 3
使用dd命令制作文件系统镜像,然后格式化生成的ext3文件系统,【注:生成系统镜像时,一定不要在文件夹下面,否则后面cp时会报错】,接着将文件系统挂载到tmpfs文件夹下,最后下的各种文件拷贝到刚刚挂载了文件镜像系统的tmpfs文件夹中。
注:mount命令 用于挂载Linux系统外的文件
最后,检查qemu模拟系统是否启动成功及挂载成功:
在/home/lzk/目录下执行一下命令:
qemu--arm -M -a9 -m 512 - /home/lzk// -dtb /home/lzk//-v2p-ca9.dtb - - "root=/dev/ rw =" -sd .ext3
第一次运行时报错,找不到/etc/init.d/rcS
直接在console下,创建该目录和文件,并在rcS下输入:
echo "---------------------------------"
echo '' to A9 "
echo ''---------------------------------"
然后,重新运行截图中的命令。可以看到,运行成功,根文件系统挂载成功。