On most *ix systems a file exists that is used to determine where partitions are found. In Microsoft Windows a USB flash drive shows up as a drive such as “E:\”. On GNU/Linux systems a USB flash drive shows up as a location relative to “/”. For instance the contents of a flash drive might show up in “/mnt/sdb1” or “/media/USB Flash Drive”. What determines this location is specified in the “/etc/fstab” file
A LiveCD is a computer operating system that runs from CD without needing to be installed. Most users install GNU/Linux systems from LiveCD. Most LiveCDs detect the partitions and drives of a system automatically and create an fstab file when booting. This overwrites the “/etc/fstab” file.
Modifying a LiveCD is sometimes called remastering or customizing. When creating a derivative distribution most configuration files are found in the same places they would be located after an install. Although the “/etc/fstab” file will exist in most cases it won’t be utilized when booting from a LiveCD. The reason is a script detects the drives and creates the file automatically.
During the initialization of the LiveCD system a temporary root filesystem is created, and if this filesystem contains a program “/init” then the system boots. In Ubuntu 8.04 the “/init” program is Initiramfs-tools.
Casper is a hook for initramfs-tools to boot live systems. The Casper scripts are contained in a file called initrd.gz. A solution to being unable to modify the “/etc/fstab” manually is to make changes to the Casper scripts which create it instead.
chroot chroot_dir /bin/bash
Add any changes for fstab between "cat > $FSTAB <<EOF" and "EOF"
mkinitramfs -o /new-initrd.gz `uname -r`
If the system you are using uses a different kernel than the one on the LiveCD replace 'uname -r' with the one you are using on the LiveCD.
mv chroot_dir/new-initrd.gz image/casper/initrd.gz