根文件系统的制作

来源:互联网 发布:琉璃神社换的域名2017 编辑:程序博客网 时间:2024/05/17 04:52

1.建立根文件系统目录与文件

1.1创建目录

mkdir rootfscd rootfsmkdir bin dev etc lib proc sbin sys usr mnt tmp varmkdir usr/bin usr/lib usr/sbin lib/modules

1.2创建设备文件

cd rootfs/devmknod -m 666 console c 5 1mknod -m 666 null c 1 3

1.3加入配置文件

tar xvzf etc.tar.gzcp etc/* rootfs/etc/ -rf

1.4添加内核模块

cd /root/linux-3.0.1/make modules ARCH=arm CROSS_COMPILE=arm-linux-make modules_install ARCH=arm INSTALL_MOD_PATH=/root/rootfs/

1.5编译安装busybox

配置busyboxBusybox Settings->build Options->选中“Build busybox as a static binary”Cross Compiler prefix (arm-linux-)Installation Options->选中“Don‘t use /usr”,选中该项可以避免busybox被安装到宿主系统的/usr目录下Busybox Installation Prefix (/xxx/rootfs)该选项表明编译后busybox的安装路径执行make编译,执行make install安装

2.挂载根文件系统到内核

2.1文件系统类型


2.2使用Initramfs

cd /root/rootfs/ln -s ./bin/busybox init 创建软链接cd /root/linux-3.0.1/make menuconfig ARCH=armGeneral setup->initial RAM file system** 选中并填上根文件系统所在路径make uImage ARCH=arm CROSS_COMPILE=arm-linux-cp /root/linux-3.0.1/arch/arm/boot/uImage /tftpboot/从uboot启动,设置环境变量:SMDK6410 # setenv bootargs noinitrd console=ttySAC0,115200SMDK6410 # saveenv启动SMDK6410 # bootm c0008000

2.3使用NFS

cd /root/linux-3.0.1/make menuconfig ARCH=armGeneral setup->initial RAM file system** 取消选中然后进入file systems->network file system选中,进入并保证Root file system on NFS选中make uImage ARCH=arm CROSS_COMPILE=arm-linux-uboot启动,设置参数如下:setenv bootargs noinitrdconsole=ttySAC0,115200 init=/init                                  串口0,波特率115200root=/dev/nfs rw                                                   使用dev下的nfs作为根文件系统,可读可写nfsroot=192.168.1.2:/root/rootfs,proto=tcp,nfsvers=3               输出路径ip=192.168.1.3:192.168.1.2:192.168.1.1:255.255.255.0::eth0:off     开发板/服务器地址,网关,子网掩码,开发板主机名,关闭DHCPsaveenvvi /etc/exports确保配置正确/root/rootfs *(rw,sync,no_root_squash)
0 0
原创粉丝点击