s5p6818/fs4418系统移植实验十四 制作根文件系统

本教程详细介绍了在FS6818平台上使用Busybox从源码编译并制作根文件系统的过程,包括配置、编译Busybox,创建必要的目录结构,添加关键配置文件,以及通过NFS挂载根文件系统。

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

实验十四 制作根文件系统

【实验目的】

       掌握根文件系统的制作方法。

       说明:在实验中命令行提示符为“$”表示在主机上运行,“#”表示在目标板上运行。

【实验环境】

  1. Ubuntu 16.04 64位发行版
  2. FS6818平台

【实验步骤】

  1. 配置并编译Busybox。使用下面的命令。

源码包在“案例源码\第三天\ busybox-1.22.1.tar.bz2

$ tar -jxvf busybox-1.22.1.tar.bz2

$ cd busybox-1.22.1/

$ make menuconfig

 

Busybox Settings  --->

  Build Options  --->

         [ ] Build BusyBox as a static binary (no shared libs) (NEW)

         (arm-none-linux-gnueabi-) Cross Compiler prefix

  Installation Options ("make install" behavior)  --->

         (./_install) BusyBox installation prefix

  1. 编译并安装Busybox。使用下面的命令。

$ make

$ make install 

安装成功后,生成以下目录。

$ ls _install

bin  linuxrc  sbin  usr

  1. 拷贝共享库文件。

$ cd ./_install

 $ cp -a /home/linux/ toolchain-4.5.1-farsight/arm-none-linux-gnueabi/libc/lib .

共享库的路径根据交叉编译工具链安装的位置的不同而不同。

$ sudo rm lib/*.a                                       # 删除静态库文件

$ arm-none-linux-gnueabi-strip lib/*.so        # 裁剪共享库文件,减小体积

  1. 添加其他目录。重新进入到_install目录,生成相应的目录。

$ cd _install

$ mkdir dev etc home mnt proc root sys tmp var

$ mkdir etc/init.d

  1. 添加/etc/inittab文件,文件内容如下。

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

::askfirst:-/bin/sh

::ctrlaltdel:/sbin/reboot

::restart:/sbin/init

  1. 添加/etc/ init.d/rcS文件,文件内容如下。

#!/bin/sh

/bin/mount -a

echo /sbin/mdev > /proc/sys/kernel/hotplug

/sbin/mdev -s

  1. 接下来添加该文件的可执行权限。

$ chmod +x etc/init.d/rcS

  1. 添加/etc/fstab文件,文件内容如下。

proc     /proc   proc    defaults        0       0

tmpfs    /tmp   tmpfs   defaults        0       0

sysfs     /sys    sysfs   defaults        0       0

tmpfs    /dev    tmpfs   defaults        0       0

  1. 添加/etc/profile文件,文件内容如下。

#!/bin/sh                                                                  

export HOSTNAME=farsight

export USER=root

export HOME=root

export PS1="[$USER@$HOSTNAME\W]\#"

PATH=/bin:/sbin:/usr/bin:/usr/sbin

LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH

export PATH LD_LIBRARY_PATH

  1. 按照实验八的方法通过NFS挂载根文件系统。

根文件系统挂载成功后,输出如下信息。

……

[    9.312000] write to read-only section trapped, success

 

Please press Enter to activate this console.

[root@farsight]#

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值