Bug#542165: grub-common: grub-probe kind of mishandles dm-crypt partitions

Marc Haber mh+debian-bugs at zugschlus.de
Sat May 1 15:41:26 UTC 2010


Hi,

during the half year that this bug has been rotting away unanswered in
the BTS, it has matured to be a showstopper.

On Tue, Aug 18, 2009 at 09:40:08AM +0200, Marc Haber wrote:
> my /boot is on a crypted dm-crypt partition. I know I can't boot from
> there, but /boot is regularly unisoned to an USB stick which then
> _can_ boot.
> 
> When I run update-grub on the crypted /boot, I get a number of
> grub-probe: error: no mapping exists for boot'
> errors, but that's not actually an error, the generated grub.cfg is
> just fine.

In the current grub version (1.98-1), update-grub aborts with this
error message, caused by /etc/grub.d/00_header calling grub-probe via
prepare_grub_to_access_device in order to find locales and translations.

Frankly, I don't care about a translated boot manager which is able
to show Umlauts, I am perfectly satisfied with an english-only
bootload. I _do_ actually care about a boot manager which is able to
create configuration which will actually boot my system.

I solved the issue by commenting out the stanza starting with "Gettext
variables and module" in /etc/grub.d/00_header, but would like to have
a possibility of grub handling my special case, for example by being
able to override the grub-probe calls with a hard-coded value which I
know being correct. grub-probe doesn't have a chance to auto-detect
the actual boot device on my system, I just need a original directory
which I can then unison to the actual boot device.

$ grep /boot /proc/mounts
/dev/mapper/boot /boot ext3 rw,noatime,nodiratime,errors=remount-ro,commit=5,data=writeback 0 0
$ sudo dmsetup table | grep ^boot
boot: 0 2096120 crypt aes-cbc-essiv:sha256 00000000000000000000000000000000 0 254:5 1032
$ sudo dmsetup ls | grep '(254, 5)'
swivel-c_boot   (254, 5)
$

Greetings
Marc





More information about the Pkg-grub-devel mailing list