TQ2440制作最小根文件系统

构建根文件系统第一件事情当然是编译busybox、这里选用的版本是busybox-1.7.0
一、编译busybox:
1. 配置编译busybox,首先解压busybox
tar xjf busybox-1.7.0.tar.bz2 
2. 打开Makefile文件对交叉编译工具进行配置
vi makefile
/CROSS_COMPILE   搜索关键字
然后添加 arm-linux-

保存退出。
3.  进入busybox-1.7.0 进行配置
make menuconfig

4. make 编译busybox。
5. 创建一个文件系统Nguhyw_fs
6.  make CONFIG_PREFIX= /home/Nguhyw/Nguhyw_fs   install
安装的路径为 /home/Nguhyw/ Nguhyw_fs 也就是根文件系统的所在地。
二、制作根文件系统:
1. 进入根文件系统的所在目录这里以 /home/Nguhyw/ Nguhyw_fs为例:
2. 先创建dev目录、mkdir dev
3. 进入dev目录 
mknod +x console c 5 1  
mknod +x null c 1 3  
4. 构造inittab文件
进入根文件系统目录 
mkdir etc
vi etc/inittab
inittab里面添加内容如下:
console::askfirst:-/bin/sh(最简单的配置文件)
5. 安装c库:
进入/home/Nguhyw/tools/gcc-3.4.5-glibc-2.3.6/arm-linux/lib目录
在根文件系统主目录下创建lib目录
复制所有.so文件 cp *.so*   /home/Nguhyw/ Nguhyw_fs/lib -d
(-d的意思是是这些文件拷贝为原本的连接文件)
然后进入根文件系统主目录: /home/Nguhyw/ Nguhyw_fs
制作yaffs2镜像文件:
1. 解压制作工具yaffs_source_util_larger_small_page_nand.tar.bz2
tar xjf yaffs_source_util_larger_small_page_nand.tar.bz2
解压完成后会生成一个文件夹叫Development_util_ok  
然后进入Development_util_ok/yaffs2/utils目录执行make命令
然后就编译出  mkyaffs2image   这个应用程序(工具)
把这个工具复制到linux的系统目录里面去:
cp mkyaffs2image  /usr/local/bin/
加上可执行属性chmod +x  /usr/local/bin/mkyaffs2image
至此就可以去创建文件系统映像了做法如下:
mkyaffs2image Nguhyw_fs  Nguhyw_fs.yaffs2
现在最小根文件系统已经制作完成,下一步就是继续完善。


继续完善刚才制作的根文件系统:
1. 根文件系统主目录下创建proc文件夹  mkdir proc
题外话
{
在开发板上挂接proc  然后使用ps命令方法如下:
# mount -t proc none /proc
# ps
  PID Uid VSZ Stat Command
    1 0 3092 S init
    2 0 SW< [kthreadd]
    3 0 SWN [ksoftirqd/0]
    4 0 SW< [watchdog/0]
    5 0 SW< [events/0]
    6 0 SW< [khelper]
   55 0 SW< [kblockd/0]
   56 0 SW< [ksuspend_usbd]
   59 0 SW< [khubd]
   61 0 SW< [kseriod]
   73 0 SW [pdflush]
   74 0 SW [pdflush]
   75 0 SW< [kswapd0]
   76 0 SW< [aio/0]
  707 0 SW< [mtdblockd]
  742 0 SW< [kmmcd]
  760 0 3096 S -sh
  771 0 3096 R ps 
可见挂接上去之后就可以使用ps命令查看当前运行的程序了。但是有没有更方便的方法可以
让它自己创建好呢? 答案是当然的 预知详情请听下面分解:
}
2. 打开etc目录下的inittab文件  vi etc/inittab
加入一个脚本: 
::sysinit:/etc/init.d/rcS
保存退出!
3. 既然上面添加了一个脚本文件,那么现在就要创建一个脚本文件( /etc/init.d/rcS )。
mkdir etc/init.d
vi etc/init.d/rcS
rcS 文件中添加内容为:
mount -t proc none /proc
4. 给文件添加可执行的属性:chmod +x etc/init.d/rcS
此时如果制作文件系统映像并烧写进开发板的话第一个就会自动创建好proc目录而且其相关
的功能也可以使用。(ps命令)
5. 挂载文件的方法不仅仅是上述这个方法,还有一个就是mount -a 修改
修改 rcS文件改为:
#mount -t proc none /proc
mount -a
6. 新建文件fstab  vi etc/fstab
写入内容为:
#device mount-point type options dump fask order
proc /proc proc defaults 0 0
sysfs /sys sysfs defaults 0 0
tmpfs /dev tmpfs defaults 0 0
7. 根文件系统主目录下创建sys文件夹
mkdir sys  (重要)
8. 修改rcS文件为:
#mount -t proc none /proc
mount -a
mkdir /dev/pts
mount -t devpts devpts /dev/pts
echo /sbin/mdev > /proc/sys/kernel/hotplug
mdev -s
9. 制作根文件系统然后下载,现在根文件系统的制作已经基本完成接下来介绍使用网络根文件系统的启动法式。


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值