FS#31240 - lvm2 root device can't be found, not possible to boot anymore

Attached to Project: Arch Linux
Opened by Heiko Baums (cyberpatrol) - Wednesday, 22 August 2012, 11:49 GMT
Last edited by Dave Reisner (falconindy) - Wednesday, 22 August 2012, 18:07 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To No-one
Architecture All
Severity Critical
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
Since the latest bigger system update on my Live USB stick it's not possible to boot anymore.

On this USB stick there's one unencrypted /boot partition and one dm-crypt/LUKS partition. In this LUKS container there's an LVM volume group with two logical volumes, one for / and one for /home.

When I now try to boot I get this message:

:: running hook [lvm2]
Activating logical volumes...
2 logical volume(2) in volume group 'vg_stick' now active
Waiting 10 seconds for device /dev/disk/by-uuid/<uuid> ...
ERROR: Unable to find root device '/dev/disk/by-uuid/<uuid>'.
You are being dropped to a recovery shell
Type 'exit' to try and continue booting
sh: can't access tty; job control turned off
[rootfs /]#

After entering 'exit' I get the same error message. Running 'udevadm trigger' doesn't help either. After the second 'exit' I get a message that says something about "you're on your own". After the third 'exit' I get a kernel panic.
This task depends upon

Closed by  Dave Reisner (falconindy)
Wednesday, 22 August 2012, 18:07 GMT
Reason for closing:  Not a bug
Comment by Dave Reisner (falconindy) - Wednesday, 22 August 2012, 14:23 GMT
I don't know what the "latest bigger system update" is in the context of a rolling release distro. This smells like any other borked initramfs. Did you generate a fallback? Does that work? What's the contents of the initramfs, etc...
Comment by Heiko Baums (cyberpatrol) - Wednesday, 22 August 2012, 17:54 GMT
The "latest bigger system update" is the latest pacman -Syu after a long time. What else?
It was indeed the initrd. There haven't been created links to the logical volumes in /dev/disk/by-uuid.

These are the kernel parameters:
cryptdevice=/dev/disk/by-uuid/<cryptcontainer-uuid>:root root=/dev/disk/by-uuid/<root-logical-volume-uuid>
After changing this to
root=/dev/mapper/vg_stick-lv_root
booting was possible again.

After running mkinicpio even the uuid is working again.

Maybe mkinitcpio should not only be run automatically by pacman after a kernel update but also after every update of a package which is involved in the initrd. To save time this probably could be done not by the PKGBUILD or post_install() but globally by pacman if a relevant package has been updated. This way such boot issues could be avoided even if they appear in only a few cases.
Comment by Dave Reisner (falconindy) - Wednesday, 22 August 2012, 18:07 GMT
Right, this is nothing new and requires hook support in pacman.

Loading...