--- init.orig 2009-04-13 11:50:22.000000000 +0100 +++ init 2009-04-13 11:50:02.000000000 +0100 @@ -197,7 +197,18 @@ # Switch to real root partition: echo 0x0100 > /proc/sys/kernel/real-root-dev - mount -o ro -t $ROOTFS $ROOTDEV /mnt + + # For architectures such as ARM, which usually cannot configure the + # boot loader from within the Linux OS, we can set the 'rootfs' /proc/cmdline + # value to be "%auto%" which lets the Kernel automatically try and mount + # the filesystem using the filesystem modules present in the initrd. + # This is provided as a user convenience. + if [ "$ROOTFS" = "%auto%" ]; then + mount -o ro $ROOTDEV /mnt + else + # Mount using the specified filesystem type: + mount -o ro -t $ROOTFS $ROOTDEV /mnt + fi if [ ! -r /mnt/sbin/init ]; then echo "ERROR: No /sbin/init found on rootdev (or not mounted). Trouble ahead."