Hey everybody, I just want to share my expirences with initramfs and aufs. Again I have to say that the kind manner in this list is something I really like.
my initramfs structur looks like this: ./ |-- aufs |-- bin | |-- busybox | |-- cat -> busybox | |-- cut -> busybox | |-- echo -> busybox | |-- findfs -> busybox | |-- grep -> busybox | |-- ls -> busybox | |-- mdev -> busybox | |-- mkdir -> busybox | |-- mount -> busybox | |-- msh -> busybox | |-- sh -> busybox | |-- switch_root -> busybox | |-- test -> busybox | `-- umount -> busybox |-- dev | `-- console |-- flashroot |-- init |-- newroot |-- proc `-- sys stuffed in a initramfs_data.cpio.gz its about 334K. The init script can be found below. -- flip cat init #!/bin/sh # # simple phase 1 init script # # by: Philipp Wehrheim 20071023 # # This file is released under the GPLv2. # export PATH="/bin" # # OVERLAYLABEL is the filesystem lable # of the overlay partition OVERLAYLABEL="Overlay" # # mount mount -n -t proc proc /proc mount -n -t sysfs sysfs /sys mount -n -t tmpfs tmpfs /dev # # mdev create devices mdev -s # # find mtd Ramdisk MTDRAMDISK=`cat /proc/mtd | grep Ramdisk | cut -d':' -f1` # # find the overlay partition # # WARNING: What happens if more than one Devices with the label is fond? echo "searching for filesystem $OVERLAYLABEL" PARTITION=`findfs LABEL=$OVERLAYLABEL 2>/dev/null` echo "PARTITION: $PARTITION" # if findfs found a partition try to mount it if test $? -eq 0 ; then echo "mounting /aufs partition" mount $PARTITION /aufs >/dev/null 2>&1 fi # if the mount did not succeed if test $? -ne 0 ; then echo "mounting /aufs with tmpfs" mount -t tmpfs tmpfs -o size=10m /aufs >/dev/null 2>&1 fi # extract squash image from flash cat /dev/$MTDRAMDISK > /squash.img # mount the squash.img mount -n -t squashfs -o loop /squash.img /flashroot # mount aufs and squash.img to newroot mount -n -t aufs -o br=/aufs:/flashroot none /newroot # create mountpoints for mount move mkdir /newroot/system/aufs mkdir /newroot/system/flashroot # move the mountpoints # into the new root mount --move /aufs /newroot/system/aufs mount --move /flashroot /newroot/system/flashroot # clean up umount -l /proc /sys /dev # switch root exec switch_root /newroot /sbin/init ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/