The best fix is to replace the incorrect UUID in your menu.lst with the correct UUID, which should also match the UUID in your fstab. To find out the correct UUID, do the following from the live CD:
...you will see an output which maps device nodes to UUID's. IN my case, it looks like this:
Code:
/dev/mapper/nvidia_effeccbe7: TYPE="swap" UUID="c7f0b160-7189-480b-8184-6aa575ae275a"
/dev/mapper/nvidia_effeccbe6: LABEL="root" UUID="4a810ba8-bfc5-4a54-b9f3-e7588805b872" SEC_TYPE="ext2" TYPE="ext3"
/dev/mapper/nvidia_effeccbe5: LABEL="tmp" UUID="4d2dbdd4-b441-4c3b-b3b1-63598b5091f4" SEC_TYPE="ext2" TYPE="ext3"
/dev/mapper/nvidia_effeccbe3: LABEL="boot" UUID="450a14e7-7e17-41e1-9c0a-5c576aaade73" SEC_TYPE="ext2" TYPE="ext3"
/dev/mapper/nvidia_effeccbe1: TYPE="ntfs" UUID="B080F3DA80F3A54E"
/dev/mapper/nvidia_effeccbe9: UUID="dfa88fa9-e0e7-4a3f-bc76-08c2e087d431" SEC_TYPE="ext2" TYPE="ext3" LABEL="misc"
/dev/mapper/nvidia_effeccbe8: LABEL="var" UUID="7568e5ba-bc0a-4773-98dd-051aabdd9430" SEC_TYPE="ext2" TYPE="ext3"
/dev/sdb1: LABEL="home" UUID="7cfd1f74-70d1-412e-8dfd-1c1ed4dd9526" SEC_TYPE="ext2" TYPE="ext3"
When editing your menu.lst, you need to make sure that the correct root filesystem is specified on the line beginning "# kopt=root", otherwise it will just break again next time you install a new kernel or manually run update-grub.
To edit your menu.lst correctly from the live CD, mount your root filesystem first:
Code:
sudo mkdir /mnt/target
sudo mount -t ext3 /dev/sda3 /mnt/target
Modify the line beginning "# kopt=root" in /mnt/target/boot/grub/menu.lst with the correct UUID. In my case, it looks like this:
Code:
# kopt=root=UUID=4a810ba8-bfc5-4a54-b9f3-e7588805b872 ro
Then you need to chroot in to your environment and run update-grub to fix it:
Code:
sudo chroot /mnt/target
update-grub
Then verify all your kernel entries contain the correct UUID, and it also matches the UUID specified in your /etc/fstab