Bug#650435: grub-pc: recsue mode doesn't rescue: error: incompatible license

Brian Potkin claremont102 at gmail.com
Tue Nov 29 19:14:43 UTC 2011


Package: grub-pc
Severity: normal


I have used today's daily i386 netinst image to put a minimal install on
a USB stick, recognised as /dev/sdc by the installer. GRUB was put in the
MBR of the first hard disk, /dev/sda. There is no problem booting into
the OS on the stick.

If the USB device is unplugged and the machine switched on we get:

   GRUB loading.
   Welcome to GRUB!

   error: no such device: <UUID_of_the_partition_holding_Debian>.
   Entering rescue mode...

Which, given GRUB is looking for its files, is not surprising.

At the rescue prompt 'ls' gives a list of devices GRUB sees. We know one
of them, (hd0,msdos10), has a Squeeze install on it. Using what has
worked in the past:

   set prefix=(hd0,msdos10)/boot/grub
   set root=(hd0,msdos10)
   insmod linux

The third command gets the reponse:

   error: incompatible license.

Pressing on (even thought we expected the prompt to have become brighter
if the command had succeeded):

   linux /vmlinuz root=/dev/sda10

Which has the response:

   Unknown command `linux'

No joy at all!

In the file grub-core/kern/dl.c from grub2_1.99.orig.tar.gz we find:

   /* Me, Vladimir Serbinenko, hereby I add this module check as per new
      GNU module policy. Note that this license check is informative only.
      Modules have to be licensed under GPLv3 or GPLv3+ (optionally
      multi-licensed under other licences as well) independently of the
      presence of this check and solely by linking (module loading in GRUB
      constitutes linking) and GRUB core being licensed under GPLv3+.
      Be sure to understand your license obligations.
   */

and (after some lines of code I do not really understand)

     return grub_error (GRUB_ERR_BAD_MODULE, "incompatible license");

So the GRUB in the MBR of /dev/sda (version 1.99-14) doesn't like the
files in /boot/grub on /dev/sdc1 (GRUB version 1.98) from a licensing
perpective. Fair enough. But, while the module check is supposed to be
informative, booting from the rescue prompt appears effectively to be
prevented, which rather belies its name and purpose. As it happens,
there is a Sid install on (hd0,msdos8) which can be booted because it
has the right kind of files.

This isn't a d-i bug, or even a Debian bug for that matter, so please
let me know if you wish me to pursue it upstream rather than here.





More information about the Pkg-grub-devel mailing list