1

Can't boot after I did a aptitude full-upgrade and let it update menu.lst (did a diff first and it looked good).

This is what I've done so far in the BusyBox shell:

mkdir /tmp/xvda1
mount /dev/xvda1 /tmp/xvda1
chroot /dev/xvda1
nano /boot/grub/menu.lst

This file looks like this:

title           Ubuntu 12.04.1 LTS, kernel 3.2.0-31-virtual
root(hd0,0)
kernel          /boot/vmlinuz-3.2.0-31-virtual root=UUID=/dev/xvda1 ro quiet splash
initrd          /boot/initrd.img-3.2.0-31-virtual

title           Ubuntu 12.04.1 LTS, kernel 3.2.0-31-virtual (recovery mode)
root(hd0,0)
kernel          /boot/vmlinuz-3.2.0-31-virtual root=UUID=/dev/xvda1 ro  single
initrd          /boot/initrd.img-3.2.0-31-virtual

titleUbuntu 12.04.1 LTS, kernel 3.2.0-24-virtual
root(hd0,0)
kernel/boot/vmlinuz-3.2.0-24-virtual root=UUID=/dev/xvda1 ro quiet splash
initrd/boot/initrd.img-3.2.0-24-virtual

titleUbuntu 12.04.1 LTS, kernel 3.2.0-24-virtual (recovery mode)
root(hd0,0)
kernel/boot/vmlinuz-3.2.0-24-virtual root=UUID=/dev/xvda1 ro  single
initrd/boot/initrd.img-3.2.0-24-virtual

titleUbuntu 12.04.1 LTS, kernel 3.2.0-24-generic
root(hd0,0)
kernel/boot/vmlinuz-3.2.0-24-generic root=UUID=/dev/xvda1 ro quiet splash
initrd/boot/initrd.img-3.2.0-24-generic

titleUbuntu 12.04.1 LTS, kernel 3.2.0-24-generic (recovery mode)
root(hd0,0)
kernel/boot/vmlinuz-3.2.0-24-generic root=UUID=/dev/xvda1 ro  single
initrd/boot/initrd.img-3.2.0-24-generic

titleChainload into GRUB 2
root(hd0,0)
kernel/boot/grub/core.img

titleUbuntu 12.04.1 LTS, memtest86+
root(hd0,0)
kernel/boot/memtest86+.bin

From what I remember, the upgrade added the UUID= string. Should I remove these? Or rather, how do I get my system back online again? Thanks.

Update: Seems like I can't even edit the file.

[ Error writing /boot/grub/menu.lst: Read-only file system ]

Update 2:

I've now rebuilt the server from an image. Examining the diff right now, and this seems like the mayor thing:

-kernel /boot/vmlinuz-3.2.0-24-virtual root=/dev/xvda1 console=hvc0 ro quiet splash
+kernel /boot/vmlinuz-3.2.0-31-virtual root=UUID=/dev/xvda1 ro quiet splash

So if I could have saved menu.lst, I guess I could have solved it.

My remaining question is: How could I have written to menu.lst?

Znarkus
  • 1,087
  • 2
  • 18
  • 32

1 Answers1

1

I just came across the same issue - before you reboot edit your /boot/grub/menu.lst - remove the UUID= and add console=hvc0.

From what I can gather console=hvc0 allows Xen to redirect and capture the console output. Also, a UUID can be used to identify the root partition, but the syntax used is incorrect.

Source here.

James Baxter
  • 196
  • 1
  • 3
  • Can you include some of the details on *why* this solution might help? See http://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-elsewhere-really-good-answers – voretaq7 Oct 26 '12 at 17:11