2

I have a cloud server hosted at Rackspace, and they use Xen Server hypervisor. I was running Ubuntu 12.04, and really messed up by attempting to do a release upgrade manually.

The hypervisor apparently doesn't get along with the changes made to GRUB (I think; there could be more) and thus does not reboot; it gets stuck at the initramfs stage of booting:

http://i.imgur.com/Bzx6I36.png

I've been speaking with a tech for a long time. We're rather undecided on what to do; would it make sense to provision a new server, grab that kernel / GRUB config, and drop it on the current server? Or to try and roll back the changes / downgrade?

If you have any suggestions, they would be greatly appreciated.

tekknolagi
  • 225
  • 2
  • 12

2 Answers2

2

Not really a xen thing. The operative bit is /dev/disk-by-uuid/dev/xvda1 does not exist.

  1. Access grub.conf by standard means (e.g. boot rescue or mount the partition/file/whatever)
  2. see if thingies like root=UUID=/dev/xvda1 appear and change them to root=/dev/xvda1
  3. check that /etc/fstab also complies e.g it reads:

    /dev/xvda1 / ext3 defaults,errors=remount-ro 0 1

and not:

UUID=/dev/xvda1 /   ext3 defaults,errors=remount-ro 0       1

That should be it.

Hint: unless the "tech" you are talking with has already tried this, he/she is out of his/her depth. This is in Google's first page, and it's Rackspace related to boot ;-) Cheers, alf

EDIT

Having seen your (grub2) config I would try to replace it with something along the lines of:

timeout=5


menuentry 'Ubuntu, with Linux 3.2.0-24-generic' {
#not sure about the following line
root=xvda,1
linux   /boot/vmlinuz-3.2.0-24-generic root=/dev/xvda1 ro console=hvc0
initrd  /boot/initrd.img-3.2.0-24-generic
} 

And then, I'd get down to find out a way to make it permanent, because, on the next upgrade grub-mkconfig will hose your config again. Here you find a different strategy which might also work not to mention advice that should probably be heeded.

Alien Life Form
  • 2,279
  • 2
  • 21
  • 31
0

So the problem wasn't particularly correctly analyzed by anyone here, but the higher-tier Linux Admins at Rackspace were instrumental in solving this problem.

I replaced my GRUB2 conf with what Alien Life Form gave me, but changed the root line to:

set root=(hd0)

Then, in my menu.lst, I removed the by-uuid line, so that it could find my drive.

From there, it booted properly.

Thank you all!

tekknolagi
  • 225
  • 2
  • 12
  • Good tip. It could help our situation: http://askubuntu.com/questions/572446/xen-vm-stuck-at-grub-prompt in which root=/dev/xvda1 is correct but /dev/xvda seems to be unavailabe for selection by grub2 repair tools. – Marcos Jan 11 '15 at 16:49