[Bug 1613260] Re: update-grub (grub-mkconfig) includes all kernels in boot, regardless whether version is in /lib/modules

Peter Passchier solusos at passchier.net
Tue Dec 6 01:28:08 UTC 2016


Or if like you said in comment #1, if you build a kernel without modules
which will run just fine without anything in /lib/modules.

And in #3 you said, you can run any kernel (of the right architecture)
from anywhere, and it seems you are right. But you can't customize or
update the initrd for it of course.

-- 
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2 in Ubuntu.
https://bugs.launchpad.net/bugs/1613260

Title:
  update-grub (grub-mkconfig) includes all kernels in boot, regardless
  whether version is in /lib/modules

Status in grub2 package in Ubuntu:
  Won't Fix

Bug description:
  All kernels/initrds in /boot are included, also if they would never
  work. Below is a patch that fixes this.

  1. Ubuntu 16.04.1 LTS (but it has always been like this)
  2. grub-common 2.02~beta2-36ubuntu3.2
  3. Only the kernels/initrds that have a version that is installed are listed on grub-mkconfig
  4. All kernels/initrds in /boot are enumerated

  
  --- 10_linux    2016-08-14 11:19:24.037604092 +0700
  +++ /etc/grub.d/10_linux        2016-08-14 18:13:53.714595280 +0700
  @@ -289,6 +289,12 @@
     rel_dirname=`make_system_path_relative_to_its_root $dirname`
     version=`echo $basename | sed -e "s,^[^0-9]*-,,g"`
     alt_version=`echo $version | sed -e "s,\.old$,,g"`
  +  ## Only if version is in /lib/modules
  +       if [ "x$(echo /lib/modules/* |grep $version)" = "x" ]
  +  then
  +    list=`echo $list | tr ' ' '\n' | grep -vx $linux | tr '\n' ' '`
  +    continue
  +  fi
     linux_root_device_thisversion="${LINUX_ROOT_DEVICE}"
   
     initrd=

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2/+bug/1613260/+subscriptions



More information about the foundations-bugs mailing list