关于根文件系统的制作,网络上有很多文章,大多数都只讲到建几个目录,然后用Busybox做个Shell,有很多关键的东西没有说。经过很长时间的摸爬滚打,我终于能够白手起家建立一个根文件系统了。其实我也不懂得原理,只是告诉大家我的作法,其中也不免有错误,欢迎大家指正。
2009年2月21日追加:这篇文章已经被无数的人转载,在Google和百度上搜文章标题,出来的已经不是EE小站的文章了。今天修改了其中的两个连接,估计已经转载的就没法修改了,所以请转载时注明来自EE小站,谢谢。
 
首先介绍根文件系统的组成:目录、Shell、库、脚本,一个个来。
 
  • 目录
  • Shell
  • 脚本
至此,一个可用的最简单文件系统就完成了。之后,可以使用mkcramfs、mkyaffs之类的工具制作文件映像,这我就不多说了。需要注意的是,cramfs文件系统是只读的,就算用的是initrd加载的cramfs也一样是只读的,这对根文件系统的/var目录有一定的影响。除了本文中说的办法,还可以用buildroot这个工具来建,但是现在我还在尝试中,以后再说。如果你嫌上面的这一切都很麻烦,可以从本站资料站下载我给Linux 2.6.19内核做的最简文件系统(1.5M),地址是http://cid-4201fdc93932ddaf.skydrive.live.com/self.aspx/EE%e5%b0%8f%e7%ab%99%e7%90%90%e7%a2%8e%e6%96%87%e4%bb%b6/root.img,cramfs格式映像。
10-16 10:25
查看更多