[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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



Andreas Gerlich <ag@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@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



Reply to: