Bug#958218: update-grub fails to process more than one argument to initrd

Tony Hunter th1031 at gmail.com
Sun Apr 19 20:54:19 BST 2020


Package: grub-common
Version: 2.04-5

When update-grub is run from the Debian bullseye/sid system, 30_os-prober
detects another OS (in this case Arch Linux) on a second drive. However,
that Arch Linux system uses early loading of microcode updates - see:
https://wiki.archlinux.org/index.php/Microcode

The grub.cfg generated on the Arch Linux disk provides two arguments to
initrd:
initrd  /boot/intel-ucode.img /boot/initramfs-linux.img

The grub.cfg generated by the Debian system produces an initrd for the Arch
Linux boot selection that contains only:
initrd  /boot/intel-ucode.img

As one might expect, attempting to boot Arch Linux from the grub boot
menu selection generated by the Debian system results in:
Kernel panic - not syncing: VFS: unable to mount root fs on unknown
block(0,0)

The fix would seem to be to make sure update-grub (or whatever it calls)
reads
all arguments to initrd.

Manually editing grub.cfg on the Debian system adding the second argument to
initrd solves the problem and the second OS boots as expected.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-grub-devel/attachments/20200419/0d3df5a2/attachment.html>


More information about the Pkg-grub-devel mailing list