0
还有/etc/init.d/rcS,这在PC上是用来执行/etc/init.d下所有初始化脚本的一个脚本,呵呵,请原谅我不懂得怎么写这种脚本,对于嵌入式系统,根本不需要这么复杂,直接写在/etc/init.d/rcS里面了。还是用我的/etc/init.d/rcS来说明,其中启动udev的那些指令对于使用静态设备节点和devfs的系统不适用。
# Start udev
/bin/mount -t tmpfs tmpfs /dev
/sbin/udevd --daemon
/sbin/udevstart
# Configure net interface
/sbin/ifconfig lo 127.0.0.1 up
/sbin/route add -net 127.0.0.0 netmask 255.0.0.0 lo
/sbin/ifconfig eth0 192.168.2.25 netmask 255.255.255.0
/sbin/route add default gw 192.168.2.1
如果用的是udev,还必须有udev的配置脚本。这个写起来有些麻烦,我们可以直接用udev自己带的那些脚本,位置在udev目录下的etc/udev/udev.conf和etc/udev/rules.d里面的文件。把这些放到根文件系统中去,etc/udev/udev.conf变为根文件系统的/etc/udev/udev.conf,etc/udev/rules.d里面的文件变为/etc/udev/rules.d里面的文件。
至此,一个可用的最简单文件系统就完成了。之后,可以使用mkcramfs、mkyaffs之类的工具制作文件映像,这我就不多说了。需要注意的是,cramfs文件系统是只读的,就算用的是initrd加载的cramfs也一样是只读的,这对根文件系统的/var目录有一定的影响。除了本文中说的办法,还可以用buildroot这个工具来建,但是现在我还在尝试中,以后再说。如果你嫌上面的这一切都很麻烦,可以从本站资料站下载我给Linux
2.6.19内核做的最简文件系统(1.5M),地址是http://cosine.oicp.net/project/at91rm9200/root.img,cramfs格式映像。