arm开发板最小文件系统的制作与nfs挂载方法

本文介绍构建最小文件系统的方法,包括使用BusyBox制作init程序、创建必要的设备节点、配置inittab及fstab文件、复制C库文件等步骤,并通过NFS挂载到开发板。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天试了下最小文件系统的制作,并成功通过nfs将文件系统挂载到开发板上,建立最小文件系统以下5点东西必不可少,

1、init 2、/dev/null 3、/dev/console  4、/etc/inittab  5、C库

1、编译busybox -》init

首先下载busybox工具,将其解压,修改MAKEFILE文件中的CROSS_COMPILE与ARCH

CROSS_COMPILE = arm-linux-

ARCH = arm

当然叉编译环境要提前配好,安装方法请看busybox根目录中的INSTALL文件,如下

make menuconfig     # This creates a file called ".config"
  make                # This creates the "busybox" executable
  make install        # or make CONFIG_PREFIX=/path/from/root install

第三条安装时注意要安装的目录为你的文件系统目录,例如我建立的最小文件系统目录为/mywork/rootfs/mini_fs

则使用命令:make CONFIG_PREFIX=/mywork/rootfs/mini_fsinstall

2、在经过第一步后在mini_fs得到以下文件和目录

/bin /sbin /usr linuxrc

进入mini_fs根目录,mkdir dev

        mknod dev/console c 5 1

mknod dev/null c 1 3

3、mkdir etc

建立inittab文件写入,这是启动系统后会自动执行的脚本文件

:;sysinit:/etc/init.d/rcS 

console::askfirst:-/bin/sh 这是用于终端打印的,必不可少的

启动系统后要执行的应用程序可在etc/init.d/rcS文件中配置,这是要执行的命令,写入

echo "----------mount all--------------"
mount -a #此命令依赖于fstab文件
ifconfig eth0 192.168.1.10

mdev -s  #此命令依赖于fstab文件
echo "------------welcome--------------"
 

最后改成可执行文件chmod a+x rcS

建立/etc/fstab文件,这是要挂载的文件系统类型,内容如下 

#device mount-point type options dump fsck order
proc /proc proc  defaults 0 0
tmpfs   /dev       tmpfs  defaults      0         0
sysfs   /sys       sysfs  defaults      0         0
tmpfs   /tmp       tmpfs  defaults      0         0

4、拷贝C库

建立lib目录,将交叉工具链中的C库拷贝到文件系统中

cp ...../arm-none-linux-gnueabi/lib/*so* ...../mini_fs/lib -d

cp ..../arm-none-linux-gnueabi/sys-root/lib  ...../mini_fs/lib -d

cp ..../arm-none-linux-gnueabi/sys-root/usr/lib  ...../mini_fs/usr/lib -d

5、挂载文件系统 

改变mini_fs的权限 chmod 777 -R mini_fs 

修改/etc/exports 加上nfs服务器的导出目录mini_fs

重启nfs服务

修改开发板的bootargs,例如我的如下:

bootargs noinitrd init=/linuxrc console=ttySAC0 root=/dev/nfs nfsroot=192.168.1.147:/mywork/rootfs/mini_fs ip=192.168.1.10:192.168.1.147:192.168.1.1:255.255.255.0::eth0:off

6、enjoy ^_^

        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值