Bug#594472: grub-pc: scary messages and very long boot time after upgrade: proposal for solution
Alexander Kurtz
kurtz.alex at googlemail.com
Fri Sep 17 17:54:41 UTC 2010
Hi everybody,
I spent the last hour re-reading the entire bug report, testing the new
mdadm version and testing a way to restore the system using a live CD.
Here's what I found:
* I am really sure that this is not a GRUB bug. You all get to the
initramfs. That's where problems start. GRUB is innocent here.
* I am quite sure now that you all have been bitten by mdadm bug
#583917[1] and friends. The symptoms are quite unique (loads of
"/sys/devices/virtual/block/md0" messages and high/endless disk
activity). Look here[2] for a good explanation of what happens.
This bug was fixed in mdadm 3.1.4-1+8efb9d1 which just migrated to
testing/squeeze[3]. I verified that with this version my system
boots fine, even without the workaround[4].
So the important part is how to get your systems back online.
Here's what you can do, if your system is still not booting (you might
want to print this out):
1. Get the current Debian Live CD[5]
32 bit: http://cdimage.debian.org/cdimage/squeeze_live_alpha2/i386/iso-hybrid/debian-live-60alpha2-i386-standard.iso
64 bit: http://cdimage.debian.org/cdimage/squeeze_live_alpha2/amd64/iso-hybrid/debian-live-60alpha2-amd64-standard.iso
burn it to a CD/DVD or write it to a USB drive using dd (if your
machine can boot from USB) and boot the live system (note that
you'll get a US keyboard layout first, this[6] might be helpful)
2. Get root and install the required tools
sudo su
apt-get update
apt-get install console-data cryptsetup less lvm2 mdadm
3. Configure the keyboard layout (if necessary)
dpkg-reconfigure console-data
4. Start your RAID arrays if not yet done. See "man mdadm".
5. Start your LVM VGs (if any). See "man lvm".
6. Load the dm_crypt kernel module using
modprobe dm_crypt
and open your crypto devices (see "man cryptsetup"), e.g.
cryptsetup luksOpen /dev/mapper/lv0 root
By now all your systems block devices should be available and useable.
7. Mount your system to /mnt, e.g.
mount /dev/mapper/root /mnt
mount /dev/md0 /mnt/boot
...
8. Bind-mount the virtual file systems:
mount -o bind /dev /mnt/dev
mount -o bind /dev/pts /mnt/dev/pts
mount -o bind /proc /mnt/proc
mount -o bind /sys /mnt/sys
9. Chroot into your main system
chroot /mnt
10. Update the required tools
apt-get update
apt-get install cryptsetup lvm2 mdadm
Ensure that you have mdadm v3.1.4:
mdadm --version
11. Check your mdadm configuration
/usr/share/mdadm/mkconf
If the output seems sane, write it to disk
/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf
12. Carefully check whether the contents of /etc/fstab
and /etc/crypttab are correct and up to date.
13. On my system mdadm didn't create the necessary links
under /dev/md/. Check if they are *all* there
ls -l /dev/md/
If some links are missing, create them manually, e.g.
ln -s /dev/md0 /dev/md/0
See the mdadm.conf you just generated for the exact names.
14. Now you should be able to recreate the initramfs and update grub
update-initramfs -u
update-grub
This should work now without any errors.
15. Exit the chroot and reboot
exit
init 6
16. Check if your system boots now. If so, then run
update-initramfs -u
update-grub
again from the main system and reboot one last time.
I hope that you'll be able to repair your systems with that. Please
report any success or failure (Which part of the above fails? What error
messages are shown?)!
Hope this helps!
Alexander Kurtz
[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=583917
[2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=585015#45
[3] http://release.debian.org/migration/testing.pl?package=mdadm
[4] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=594418#25
[5] http://live.debian.net/
[6] http://upload.wikimedia.org/wikipedia/commons/5/51/KB_United_States-NoAltGr.svg
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part
URL: <http://lists.alioth.debian.org/pipermail/pkg-grub-devel/attachments/20100917/e4184b69/attachment.pgp>
More information about the Pkg-grub-devel
mailing list