FS#17392 - Unbootable system after fresh install w/encrypted root
Attached to Project:
Release Engineering
Opened by Hendrik Krauß (Geheimdienst) - Saturday, 05 December 2009, 10:10 GMT
Last edited by Dieter Plaetinck (Dieter_be) - Saturday, 06 March 2010, 09:35 GMT
Opened by Hendrik Krauß (Geheimdienst) - Saturday, 05 December 2009, 10:10 GMT
Last edited by Dieter Plaetinck (Dieter_be) - Saturday, 06 March 2010, 09:35 GMT
|
Details
Description:
Being fed up with Ubuntu, I wanted to try Arch. I told the Arch installer to set up dm_crypt with ext3 on top, mountpoint "/". When starting the newly installed OS, booting stopped with fsck reporting a bad superblock on the root file system. Then Arch dropped me into a maintenance shell with the root FS mounted read-only. I found out that mkinitcpio has a hook "encrypt" which mounts the root partition into /dev/mapper/root. The name "root" is hardcoded in the encrypt hook, and that's the problem. The installer asked me what I want to name the device and I said "/dev/mapper/arch-root". The installer then made an fstab to mount "/dev/mapper/arch-root" with the mountpoint "/" (correct). But the encrypt hook didn't get the memo about the name "arch-root", and made up the name "/dev/mapper/root". So fsck reads fstab, tries to check /dev/mapper/arch-root, sees it isn't there, and freaks out. I read the encrypt hook script, but I don't understand enough of it to fix the problem. For instance I can't tell where the variable $cryptdevice is supposed to be coming from. Might be related: when booting, the encrypt hook prints a message telling me that "deprecated syntax" is being used. However the installer set that all up for me. I didn't put no "deprecated syntax" anywhere. It's a little unfortunate that the installer creates conf files which just one reboot later cause major breakage. Any workaround would be greatly appreciated. Where am I supposed to set the "$cryptdevice" variable? Additional info: Package cryptsetup-1.0.7-1 (this is what you get when you install Arch today) Arch installer Steps to reproduce: Install Arch, telling the installer to encrypt the root partition. Name it "/dev/mapper/something". Reboot into newly installed system, which won't boot. |
This task depends upon
Closed by Dieter Plaetinck (Dieter_be)
Saturday, 06 March 2010, 09:35 GMT
Reason for closing: Duplicate
Additional comments about closing: dup of FS#16759
Saturday, 06 March 2010, 09:35 GMT
Reason for closing: Duplicate
Additional comments about closing: dup of
On the kernel commandline, change:
root=/dev/something
to
cryptsetup=/dev/something:arch-root root=/dev/mapper/arch-root
You can do that directly in grub. Then when it boots, apply the change to /boot/grub/menu.lst.
But please, guys, try to get that patch applied. This bug is losing new users for Arch. It really took me days installing, installing again, not getting anywhere on IRC, not getting anywhere in the forum, finally reading shell scripts in an uncomfortable emergency shell. With just a little less patience, I wouldn't be an Arch user now.
So thanks again, and it would be awesome if that patch got in before the next release.
The fix is there, and it will definitely be in the next installer release.