(6)创建一些重要文件。inittab是Linux启动之后第一个被访问的脚本文件。
# This is run first except when booting
::sysinit:/etc/init.d/rcS
# Start an “askfirst” shell on the console
#::askfirst:-/bin/bash
::askfirst:/bin/bash
# Stuff to do when restarting the init process
::restart:/sbin/init
#::once:/sbin/raja.sh
#::respawn:/sbin/iom
::once:/usr/etc/rc.local
# Stuff to do before rebooting
::ctrlaltdel:/sbin/reboot
::shutdown:/bin/umount -a -r
建立init.d目录,进入init.d目录,建立rcS文件,文件内容如下:
#!/bin/sh
# This is the first script called by init process
/bin/mount -a
exec /usr/etc/rc.local
建立/etc/profile文件:
# /etc/profile
PATH=/bin:/sbin:/usr/bin:/usr/sbin
LD_LIBRARY_PATH=/lib:/usr/lib:$LD_LIBRARY_PATH
export PATH LD_LIBRARY_PATH
其中,profile用于设置shell的环境变量,shell启动时会读取/etc/profile文件来设置环境变量。以下是/etc/rc.local文件:
#!/bin/sh
#add user specified script
cd /dev
ln -s /dev/fb/0 fb0
ln -s vc/0 tty0
ln -s vc/1 tty1
ln -s vc/2 tty2
mknod –m 660 mtd0 c 90 0
mknod –m 660 mtd1 c 90 2
mknod –m 660 mtd2 c 90 4
mknod –m 660 mtdblock0 b 31 0
mknod –m 660 mtdblock1 b 31 1
mknod –m 660 mtdblock2 b 31 2
fstab文件定义了文件系统的各个“挂接点”,需要与实际的系统相配合。
none /proc proc defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
后要创建用户和用户组文件等其他文件,以上用busybox构造了文件系统的内容。
下面创建cramfs文件系统映像文件,制作cramfs映像文件需要用到的工具是mkcramfs。此时可以采用两种方法,一种方法是使用我们所构建的文件系统(在目录“/home/david/fs2410/cramfs”中),另一种方法是在已经做好的cramfs映像文件的基础上进行适当的改动。下面的示例使用第二种方法,因为这个方法包含了第一种方法的所有步骤(假设已经做好的映像文件名为“fs2410.cramfs”)。