[Pkg-cryptsetup-devel] Bug#428329: [ag at corcomroe.in-ulm.de: Re: Bug#428329: Bug in debian-Installer/initramfs when I use "GUID Partition Table (GPT)" with a crypted root filesystem]

David Härdeman david at hardeman.nu
Mon Dec 3 19:05:32 UTC 2007


Andreas Gerlich <ag at corcomroe.in-ulm.de> wrote:
>In the following screens I setup the same like in the first situation:
>
> /boot       SWAP           /
>,--------, ,--------,   ,--------,
>| BOOT   | | SWAP   |   |  ROOT  |
>`---*----´ `---*----´   `----*---´
>    |          |             |
>    |          |             |
>    |          |             |
>    |      ,---*------, ,----*-------,
>    |      |sda2_crypt| |sda3_crypt  |
>    |      | key      | | Key        |
>    |      | random   | | Passphrase |
>    |      `---*------´ `-------*----´
>    |          |                |
>    |          |                |
>  ,-*--,     ,-*--,        ,----*-,
>  |sda1|     |sda2|        | sda3 |    /dev/sda
>  `----´     `----´        `------´
>  (/dev/sda is the 2.3TB Host-drive of the ICP Vortex RAID controller)

Ah, I understand now why it fails (see explanation below)

>           ¦ -->Install the GRUB boot loader on a hard disk        ¦
>           ¦ -->Install the LILO boot loader on a hard disk        ¦
>           ¦    Continue without boot loader                       ¦
>           ¦ -->Finish the installation                            ¦
>           ¦    Change debconf priority                            ¦
>           ¦    Check the CD-ROM(s) integrity                      ¦
>           ¦    Save debug logs                                    ¦
>           ¦    Execute a shell                                    ¦
>           ¦    Abort the installation                             ¦
>           ¦                                                       ¦
>           ¦                                                       ¦
>           ¦                                                       ¦
>           +-------------------------------------------------------+
>
>It it necessary to go through GRUB before select LILO !!!

What happens if you don't? This sounds like a separate bug report should 
be filed against the appropriate part of debian-installer (discuss on 
debian-boot at lists.debian.org if you're unsure which component to report 
it against).

>(initramfs) _
>(initramfs) cat /proc/cmdline
>
>auto BOOT_IMAGE=Linux ro root=fe01  (The information which you request)

Aha! root=fe01 means that root is on the block device with major 254 
(0xfe) and minor 1 (0x01). Major 254 is device-mapper and devices are 
dynamically allocated minor numbers starting from 0. This means that 
when you setup the devices in debian-installer, you got the following 
layout:

/dev/mapper/sda2_crypt (swap), major 254, minor 0
/dev/mapper/sda3_crypt (root), major 254, minor 1

Root is on /dev/mapper/sda3_crypt so lilo encoded root=fe01, but the 
next time you boot, /dev/mapper/sda3_crypt is brought up first, which 
gives it major 254, minor 0, which is why it can't be found.

I'm pretty certain that everything would have worked if the root device 
would have been created first during installation 
(making it /dev/mapper/sda2_crypt with major 254, minor 0) and swap 
second.

So this is not really a bug in cryptsetup, but a problem in the 
interaction between device-mapper devices and lilo in debian-installer.

Unfortunately, I'm not sure what would be the best fix for this, so I've 
sent a copy of this mail to debian-boot, let's see if we can get some 
feedback.

(For those of you just joining, see #428329 for background info)

-- 
David Härdeman





More information about the Pkg-cryptsetup-devel mailing list