I’ve been always a fan of the robust upgrade procedure documented in the Debian release notes, which has worked without problems even over ssh to remote machines. This has made upgrading very painless (at least since sarge — I haven’t used Debian actively longer than that).
Yesterday I ran into a problem, though, which was only saved by having remote console access. I have a system with a slightly more complicated disk setup: it has two SCSI disks running as a RAID 1 array using md and lvm. Upon rebooting after the upgrade, the system didn’t reappear on the network. What I found on the console was the initramfs panic shell: the root file system had not been found. Rebooting the old etch kernel worked fine.
The workaround proved to be very simple, once I distilled it from the search engine results. Just add rootdelay=10
to the kernel options in the bootloader. I’m using GRUB so this translates to editing the kopt
line in /boot/grub/menu.lst
and running update-grub
.
I had also added raid1
to modules
in /etc/initramfs-tools
and regenerated the initrd, but that (alone) didn’t help. I’m not even sure it is needed at all — it might already be included anyway when using MODULES=most
in initramfs.conf
.