嵌入式根文件系统(基于arm)

本文详细介绍了如何构建基于ARM的根文件系统,包括创建目录、设备文件、配置文件,编译安装Busybox以及挂载根文件系统的方法,如initramfs和NFS。通过NFS,开发者可以实现开发板与主机间的文件同步,提高开发效率。
摘要由CSDN通过智能技术生成

1 根文件系统

嵌入式可以包含多个文件系统,根文件系统是第一个,当linux启动的时候,第一个必须挂载的是根文件系统,若系统不能从指定设备上挂载根文件系统,则系统出错就退出。本文主要分以下两个部分说明根文件系统,第一个是如何制作根文件系统,第二个则是挂载根文件系统到内核。


2 如何建立根文件系统

根文件系统的制作是学习驱动的重要一步,这里我直接把制作根文件系统的框架思维导图贴出来了。我们制作的根文件系统就是按照这个框架来设计。
这里写图片描述

2.1 创建目录

本文所创建的根文件名称是rootfs,路径是/home/S5-driver/lesson8/rootfs,这个路径在随后的内核配置中用到多次。接下来在rootfs中创建一系列目录,mkdir bin etc lib proc sbin sys usr mnt tmp var,这些目录都是根文件基本上所必须具有的目录。以及创建子目录:mkdir usr/bin usr/lib usr/sbin lib/modules

2.2 创建设备文件

linux启动的时候,有两个设备是必须要的,在rootfs/dev目录下操作:

mknod -m 666 console c 5 1
mknod -m 666 null c 1 3

第一个指令console表示是串口控制台设备 c表示是字符设备 5表示主设备号,1表示次设备号。第二个指令暂且先这样设置。这样就创建了两个设备文件console 和 null。

2.3 加入配置文件

把etc.tar.gz放到/home/S5-driver/lesson7/linux-ok6410(这个路径是存放内核的路径)中解压后得到etc文件,将这个文件里所有的东西复制到rootfs/etc/中去。(etc.tar.gz压缩包是需要自己找一下)

cp etc/* rootfs/etc/ -rf
2.4 添加内核模块(这步是在内核顶层目录下进行的)

分别执行以下三条指令,第一条是表示进入内核目录中,第二条是指编译内核模块,第三天指的是将模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值