下载后可任意编辑构建基本的嵌入式 Linux 根文件系统其实在去年 8 月份我做系统移植时就构建好了一个可以用的根文件系统,但是那时是跟着别人的《Linux 全线移植文档》做的。有些东西我也不清楚,只是跟着做,做出来能用就了事了,没有深究其中的法律规范,以及文件系统中哪些要,哪些不要。趁着今年过年的几天假期,我移植重新移植了 U-Boot1.3.1 和 Linux2.6.24 到 S3C2410 及S3C2440 后,我想好好的看看有关文件系统构建方法和法律规范,整理整理构建根文件系统的文档。之后,我用了近一周的时间,慢慢讨论《构建嵌入式 Linux 系统》这本书有关根文件系统的部分,以及一些网上的参考资料,不断地实验。构建好了一个精简的根文件系统,下面我只介绍构建的过程和方法,至于原理我给出以下参考资料,自己看吧。 --------------------------------------------------------------------------------1、 《Linux 系统移植》:一个经典的 Linux 移植文档,共有 95 页的 PDF 文档,内容十分详细,里面有根文件系统的创建,还多地方都有下载(有的网站称之为《Linux 系统全线移植文档》等等),很值得参考。在这里感谢文档的作者们。2、 《构建嵌入式 Linux 系统》必看!里面对文件系统的构建讲的挺细。3、 《Filesystem Hierarchy Standard》Linux 文件系统的标准法律规范。我只看到英文的。其他再遇到不懂的就 google,基本上都是 Linux 的相关知识,都是找得到的。 --------------------------------------------------------------------------------(1)创建根文件系统的基本目录结构。我把这个过程做成了 shell 脚本(文件名为 mkroot) ,很方便! #! /bin/sh echo "creatint rootfs dir......" mkdir rootfs cd rootfs echo "making dir : bin dev etc lib proc sbin sys usr" mkdir bin dev etc lib proc sbin sys usr #必备的 8 个目录 mkdir usr/bin usr/lib usr/sbin lib/modules# Don't use mknod ,unless you run this Script as root !# mknod -m 600 dev/console c 5 1# mknod -m 666 dev/null c 1 3 下载后可任意编辑 echo "making dir : mnt tmp var" mkdir mnt tmp var chmod 1777 tmp mkdir mnt/etc mnt/jffs2 mnt/yaffs mnt/data mnt/temp mkdir var/lib var/lock var/log var/run var/tmp c...