Linux根文件系统构建

一、平台:

a)操作系统:Ubuntu10.04
b)交叉编译器:arm-linux-gcc-4.3.2
c)内核uImage: linux2.6.32.2
d)开发板:mini2440

二、步骤

1)通过busybox创建精简文件系统

编译/安装busybox
tar -zxvf busybox-1.13.3.tgz
修改Makefile
ARCH = arm
CROSS_COMPILE = arm-linux-
然后输入make menuconfig,进入配置界面,如截图配置
选择Busybox Setting—->
General Configuration—->
Linux根文件系统构建_第1张图片
Build Options —->
Linux根文件系统构建_第2张图片
Installation Options—->
这里写图片描述
Busybox Library Tuning
Linux根文件系统构建_第3张图片
Linux Module Utilities
Linux根文件系统构建_第4张图片
配置完成,保存退出。
make
make install
生成精简根文件系统,保存在busybox/_install目录下

2)完善生成可用的文件系统

创建文件夹,从./_install复制通过busybox创建成功的文件系统
mkdir my_busybox
cp -rf busybox/_install/* my_busybox/
生成其余必须的文件系统目录
cd my_busybox
mkdir dev etc lib proc var
从busybox目录拷贝配置文件
cp /home/cheng/busybox-1.13.3/examples/bootfloppy/etc/* etc/ -arf
创建设备文件
这里写图片描述
从交叉编译器目录下拷贝动态库文件
通过 which arm-linux-gcc 查看交叉编译器所在位置
进入目录后通过 find -name * 命令查找所需动态库文件所在位置,然后拷贝,如图所示
Linux根文件系统构建_第5张图片
构建NFS网络根文件系统
编辑/etc/exports文件,添加共享根文件系统文件夹所在目录
Linux根文件系统构建_第6张图片
重启NFS服务
/etc/init.d/nfs-kernel-server restart
将内核uImage放在/home/cheng/tftpboot目录下以便开发板下载
开发板下载u-boot.bin后启动
设置bootargs参数
setenv bootargs root=/dev/nfs nfsroot=192.168.10.110:/home/cheng/my_busybox ip=192.168.10.122 init=/linuxrc console=ttySAC0,115200
下载内核并启动
Tftp 0x30008000 uImage
bootm 0x30008000
看到如下交互界面代表成功
Linux根文件系统构建_第7张图片

你可能感兴趣的:(系统移植,根文件系统)