linux-根文件系统移植

根文件系统移植

编译和安装busybox

以busybox-1.23.2为例

  1. 配置Busybox
make menuconfig  
	a.busybox Settings --->  ;
	build Options --->  
		build with Large File  
		Support:如果想要支持2Gb的大文件选中,否则不选  
		Cross Compiler prefix:指定交叉编译工具链  	
	installation Options --->  
		BusyBox installation   prefix:安装目录,该目录就是busybox生成的最基本的根目录  	
	busybox Libraay Tuning -->:参考busybox_rootfs.pdf文档  
b.Applets --->:需要编译的小程序,按需勾选,参考busybox_rootfs.pdf文档`

2、编译
make
3、安装
make install
将根据BusyBox installation prefix所指定的路径,生成基础根目录
基础根目录下:bin linuxrc sbin usr

详细参见:busybos_rootfs.pdf

制作根文件系统

a.在虚拟机的NFS所在目录建立一个rootfs文件夹:
	在NFS目录下建立,是为了便于之后通过NFS挂载根目录到单板上
	在rootfs下建立:mkdir bin dev etc home lib mnt proc  sbin sys tmp var usr
b.复制busybox编译后生成的文件至rootfs,删除linuxrc
c.复制交叉编译工具链目录下的lib目录中的库文件至rootfs/lib
d.创建etc/profile:存放所有用户成员的默认环境变量,也就是系统环境变量
e.创建etc/inittab:完成内核引导后启动的一个进程init,会调用该etc/inittab文件,该文件指定之后的动作
f.创建etc/fstab:系统开机时,会主动读取etc/fstab这个文件的内容,根据文件里面的配置挂载磁盘。
这样我们只需要将磁盘的挂载信息写入这个文件中我们就不需要每次开机启动之后手动进行挂载。
g.创建初始化脚本etc/init.d/rcS
h.创建etc/init.d/rc.local:记录在用户登录之前,需要启动的本地服务
i.创建/etc/resolv.conf:配置DNS服务器地址
	创建etc/host.conf:解析器查询顺序配置文件
	etc/hosts:存放IP和域名的对应关系
j.etc/passwd  etc/group
k.etc.ld.so.conf:指定系统库路径
m.建立设备节点 dev/console dev/null

挂载根文件系统

命令:mount -o nolock -t nfs 192.168.18.200:/mcuzone/nfsroot/ /mnt/
nfs:采用nfs协议进行挂载
192.168.18.200:/mcuzone/nfsroot/:挂载主机的ip和目录
/mnt/:挂载到单板上的路径

制作不同格式类型的文件系统

a.编译mtd-utils工具
b.具体类型采用具体命令

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值