[Bug 1828200] Re: [SRU] kernel package names ending with version without flavor are not matched by generated patterns

Balint Reczey balint.reczey at canonical.com
Fri Oct 18 10:53:02 UTC 2019


** Description changed:

+ [Impact]
+ 
+  * Most of the unused kernel packages are automatically removed by u-u, but kernel packages not including the flavor in the name are not removed taking up significant space after some time:
+  $ sudo apt autoremove
+ Reading package lists... Done
+ Building dependency tree       
+ Reading state information... Done
+ The following packages will be REMOVED:
+   linux-gcp-headers-4.15.0-1018 linux-gcp-headers-4.15.0-1019 linux-gcp-headers-4.15.0-1021 linux-gcp-headers-4.15.0-1024 linux-gcp-headers-4.15.0-1025 linux-gcp-headers-4.15.0-1026 linux-gcp-headers-4.15.0-1027
+   linux-gcp-headers-4.15.0-1028 linux-gcp-headers-4.15.0-1029 linux-gcp-headers-4.15.0-1030 linux-gcp-headers-4.15.0-1032 linux-gcp-headers-4.15.0-1033 linux-gcp-headers-4.15.0-1034 linux-gcp-headers-4.15.0-1036
+   linux-gcp-headers-4.15.0-1037 linux-gcp-headers-4.15.0-1042 nplan
+ 0 upgraded, 0 newly installed, 17 to remove and 16 not upgraded.
+ After this operation, 1234 MB disk space will be freed.
+ Do you want to continue? [Y/n]
+ 
+ [Test Case]
+ 
+  * A new test case is added to autopkgtest
+ (test/autopkgtest_kernel_patterns.py) to verify that all kernel-related
+ packages are covered having the same version of the running kernel.
+ 
+  * Install linux-gcp-headers-4.15.0-1042 and make it autoremovable
+  * Run unattended-upgrades
+  * Observe linux-gcp-headers-4.15.0-1042 being autoremoved with fixed u-u versions.
+ 
+ [Regression Potential]
+ 
+  * With the file name patterns changing u-u may select packages with names matching the patterns but not being versioned kernel packages. In case those packages are autoremovable they are removed by u-u.
+ To avoid this problem the fix for LP: #1848706 ensures that only linux-related packages are autoremoved in the kernel autoremoval phase.
+ 
+ 
+ [Original Bug Text]
+ 
  Apt ships VersionedKernelPackages regex patterns in
  /etc/apt/apt.conf.d/01autoremove from which /etc/kernel/postinst.d/apt-
  auto-removal generates kernel package name patterns by appending the
  running kernel version including the flavor like
  linux-.*-4.15.0-1010-kvm but those generated patterns don't cover
  versioned kernel package names including the version without the flavor,
  such as linux-kvm-tools-4.15.0-1012.
  
  Unattended-upgrades generates the patterns in a similar way and also
  don't cover linux-kvm-tools-4.15.0-1012 and similar packages.

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

Title:
  [SRU] kernel package names ending with version without flavor are not
  matched by generated patterns

Status in unattended-upgrades package in Ubuntu:
  Fix Released

Bug description:
  [Impact]

   * Most of the unused kernel packages are automatically removed by u-u, but kernel packages not including the flavor in the name are not removed taking up significant space after some time:
   $ sudo apt autoremove
  Reading package lists... Done
  Building dependency tree       
  Reading state information... Done
  The following packages will be REMOVED:
    linux-gcp-headers-4.15.0-1018 linux-gcp-headers-4.15.0-1019 linux-gcp-headers-4.15.0-1021 linux-gcp-headers-4.15.0-1024 linux-gcp-headers-4.15.0-1025 linux-gcp-headers-4.15.0-1026 linux-gcp-headers-4.15.0-1027
    linux-gcp-headers-4.15.0-1028 linux-gcp-headers-4.15.0-1029 linux-gcp-headers-4.15.0-1030 linux-gcp-headers-4.15.0-1032 linux-gcp-headers-4.15.0-1033 linux-gcp-headers-4.15.0-1034 linux-gcp-headers-4.15.0-1036
    linux-gcp-headers-4.15.0-1037 linux-gcp-headers-4.15.0-1042 nplan
  0 upgraded, 0 newly installed, 17 to remove and 16 not upgraded.
  After this operation, 1234 MB disk space will be freed.
  Do you want to continue? [Y/n]

  [Test Case]

   * A new test case is added to autopkgtest
  (test/autopkgtest_kernel_patterns.py) to verify that all kernel-
  related packages are covered having the same version of the running
  kernel.

   * Install linux-gcp-headers-4.15.0-1042 and make it autoremovable
   * Run unattended-upgrades
   * Observe linux-gcp-headers-4.15.0-1042 being autoremoved with fixed u-u versions.

  [Regression Potential]

   * With the file name patterns changing u-u may select packages with names matching the patterns but not being versioned kernel packages. In case those packages are autoremovable they are removed by u-u.
  To avoid this problem the fix for LP: #1848706 ensures that only linux-related packages are autoremoved in the kernel autoremoval phase.

  
  [Original Bug Text]

  Apt ships VersionedKernelPackages regex patterns in
  /etc/apt/apt.conf.d/01autoremove from which /etc/kernel/postinst.d
  /apt-auto-removal generates kernel package name patterns by appending
  the running kernel version including the flavor like
  linux-.*-4.15.0-1010-kvm but those generated patterns don't cover
  versioned kernel package names including the version without the
  flavor, such as linux-kvm-tools-4.15.0-1012.

  Unattended-upgrades generates the patterns in a similar way and also
  don't cover linux-kvm-tools-4.15.0-1012 and similar packages.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/unattended-upgrades/+bug/1828200/+subscriptions



More information about the foundations-bugs mailing list