Specifications
$ mkdir rootfs
$ cd rootfs
$ tar -zxf /tmp/rootfs.tar.gz
Like with the cramfs root file system, we use "tmpfs" for cases where a writable file system is
needed and add the following lines to the /etc/rc.sh script:
# mount TMPFS because root-fs is readonly
/bin/mount -t tmpfs -o size=2M tmpfs /tmpfs
We also create the same symbolic links for device files that must be placed in a writable filesystem:
dev/ptyp0 → /tmpfs/dev/ptyp0 dev/ttyp0 → /tmpfs/dev/ttyp0
dev/ptyp1 → /tmpfs/dev/ptyp1 dev/ttyp1 → /tmpfs/dev/ttyp1
dev/ptyp2 → /tmpfs/dev/ptyp2 dev/ttyp2 → /tmpfs/dev/ttyp2
dev/ptyp3 → /tmpfs/dev/ptyp3 dev/ttyp3 → /tmpfs/dev/ttyp3
dev/ptyp4 → /tmpfs/dev/ptyp4 dev/ttyp4 → /tmpfs/dev/ttyp4
dev/ptyp5 → /tmpfs/dev/ptyp5 dev/ttyp5 → /tmpfs/dev/ttyp5
dev/ptyp6 → /tmpfs/dev/ptyp6 dev/ttyp6 → /tmpfs/dev/ttyp6
dev/ptyp7 → /tmpfs/dev/ptyp7 dev/ttyp7 → /tmpfs/dev/ttyp7
dev/ptyp8 → /tmpfs/dev/ptyp8 dev/ttyp8 → /tmpfs/dev/ttyp8
dev/ptyp9 → /tmpfs/dev/ptyp9 dev/ttyp9 → /tmpfs/dev/ttyp9
dev/ptypa → /tmpfs/dev/ptypa dev/ttypa → /tmpfs/dev/ttypa
dev/ptypb → /tmpfs/dev/ptypb dev/ttypb → /tmpfs/dev/ttypb
dev/ptypc → /tmpfs/dev/ptypc dev/ttypc → /tmpfs/dev/ttypc
dev/ptypd → /tmpfs/dev/ptypd dev/ttypd → /tmpfs/dev/ttypd
dev/ptype → /tmpfs/dev/ptype dev/ttype → /tmpfs/dev/ttype
dev/ptypf → /tmpfs/dev/ptypf dev/ttypf → /tmpfs/dev/ttypf
tmp → /tmpfs/tmp var → /tmpfs/var
dev/log → /var/log/log
In case you use dhclient also:
etc/dhclient.conf → /tmpfs/var/lib/dhclient.conf etc/resolv.conf → /tmpfs/var/lib/resolv.conf
To place the corresponding directories and device files in the tmpfs file system, the following code
is added to the /etc/rc.sh script:
mkdir -p /tmpfs/tmp /tmpfs/dev \
/tmpfs/var/lib/dhcp /tmpfs/var/lock /tmpfs/var/run
while read name minor
do
mknod /tmpfs/dev/ptyp$name c 2 $minor
mknod /tmpfs/dev/ttyp$name c 3 $minor
done <<__EOD__
0 0
1 1
2 2
3 3
4 4
5 5
6 6
7 7
8 8
9 9
a 10
b 11
c 12
2.
9.5.4. Root File System on a Read-Only ext2 File System 119