bionic:
link_in_boot = yes

# dpkg-query -W linux-base
linux-base      4.5ubuntu1.6

# Two regular flavours
# ls -latr /boot/ | grep -- '->' | sort
lrwxrwxrwx  1 root root       26 Jun 23 14:08 vmlinuz.old -> 
vmlinuz-4.15.0-147-generic
lrwxrwxrwx  1 root root       29 Jun 23 14:08 initrd.img.old -> 
initrd.img-4.15.0-147-generic
lrwxrwxrwx  1 root root       29 Jun 23 14:10 vmlinuz -> 
vmlinuz-4.15.0-147-lowlatency
lrwxrwxrwx  1 root root       32 Jun 23 14:10 initrd.img -> 
initrd.img-4.15.0-147-lowlatency

# selfbuilt
# installkernel 5.13.0-051300rc7-generic 
image/boot/vmlinuz-5.13.0-051300rc7-generic 
modules/boot/System.map-5.13.0-051300rc7-generic
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 
5.13.0-051300rc7-generic /boot/vmlinuz-5.13.0-051300rc7-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 
5.13.0-051300rc7-generic /boot/vmlinuz-5.13.0-051300rc7-generic
update-initramfs: Generating /boot/initrd.img-5.13.0-051300rc7-generic
run-parts: executing /etc/kernel/postinst.d/xx-update-initrd-links 
5.13.0-051300rc7-generic /boot/vmlinuz-5.13.0-051300rc7-generic
I: /boot/initrd.img.old is now a symlink to initrd.img-4.15.0-147-lowlatency
I: /boot/initrd.img is now a symlink to initrd.img-5.13.0-051300rc7-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 
5.13.0-051300rc7-generic /boot/vmlinuz-5.13.0-051300rc7-generic

# ls -latr /boot/ | grep -- '->' | sort
lrwxrwxrwx  1 root root       29 Jun 23 14:10 vmlinuz.old -> 
vmlinuz-4.15.0-147-lowlatency
lrwxrwxrwx  1 root root       32 Jun 23 14:13 vmlinuz -> 
vmlinuz-5.13.0-051300rc7-generic
lrwxrwxrwx  1 root root       32 Jun 23 14:14 initrd.img.old -> 
initrd.img-4.15.0-147-lowlatency
lrwxrwxrwx  1 root root       35 Jun 23 14:14 initrd.img -> 
initrd.img-5.13.0-051300rc7-generic

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-base in Ubuntu.
https://bugs.launchpad.net/bugs/1929255

Title:
  update-initrd-links creates incorrect symlinks

Status in linux-base package in Ubuntu:
  Fix Released
Status in linux-base source package in Bionic:
  Fix Committed
Status in linux-base source package in Focal:
  Fix Committed
Status in linux-base source package in Groovy:
  New
Status in linux-base source package in Hirsute:
  Fix Committed
Status in linux-base source package in Impish:
  Fix Released

Bug description:
  [Impact]

  ## Problem description

  Executing the `/etc/kernel/postinst.d/xx-update-initrd-links` script
  incorrectly detects symbolic links targets and then creates malformed
  (hence broken) ones instead:

  /initrd.img -> initrd.imgboot/vmlinuz-5.3.0-53-generic
  /initrd.img.old -> initrd.imgboot/vmlinuz-5.3.0-53-generic

  while it should actually be:

  /initrd.img -> boot/initrd.img-5.3.0-53-generic
  /initrd.img.old -> boot/initrd.img-5.3.0-53-generic

  The problem appeared with the release of the version 4.5ubuntu1.5 of
  the linux-base package, which made this script executable.

  [Test Plan]

   * Install new linux-base and initramfs-tools

   * create /etc/kernel-img.conf with

  do_symlinks = yes
  do_bootloader = no
  do_initrd = yes
  link_in_boot = yes

   * Install one kernel flavour, check that symlinks in /boot have sane targets
   * Install another kernel, check that symlinks in /boot/ have sane targets

   * create a selfbuilt kernel and install it by calling installkernel
  (you can download kernel debs from kernel-ppa, and unpack them to
  pretend one has self built it). and check that symlinks in /boot have
  sane targets.

   * Purge all kernel, and remove symlinks in /boot

   * Update /etc/kernel-img.conf to

  do_symlinks = yes
  do_bootloader = no
  do_initrd = yes
  link_in_boot = no

   * Install one kernel flavour, check that symlinks in / have sane targets
   * Install another kernel, check that symlinks in / have sane targets
   * create a selfbuilt kernel and install it by calling installkernel (you can 
download kernel debs from kernel-ppa, and unpack them to pretend one has self 
built it)

  * remove all kernels, purge initramfs-tools, clean up symlinks in / and /boot
  * repeat all of the above, without having initramfs-tools installed. I.e. 
install kernels _without_ recommneds.

  [Where problems could occur]

   * The rewritten postinst.d script now simply mostly calls linux-
  update-links like the normal linux-image postinst script does. One has
  to make sure that .deb installations of kernels happens correctly and
  that installkernel way of installing kernels happens correctly. Under
  different kernel-img.conf settings. The previous incarnations of
  fixing this and related issues did not account for the above cases and
  codepaths.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-base/+bug/1929255/+subscriptions

-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to