1

unattended-upgrade recently automatically upgrade my kernel to 4.4.0-143 but it does not work with Nvidia graphic cards so I decided to roll back to previous version.

I am able to boot to an older kernel(4.4.0-141), and confirmed I'm booting my computer with that:

4.4.0-141-generic

but when I tried to apt purge linux-image-4.4.0-143-generic, apt prompts me to confirm:

The following NEW packages will be installed:
  linux-image-unsigned-4.4.0-143-generic

So why is uninstalling a signed kernel requires to install an unsigned version? And how can I safely remove the newer(143) kernel? Thanks in advance!

full output of apt purge:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages were automatically installed and are no longer required:
  amd64-microcode intel-microcode iucode-tool linux-headers-4.4.0-137 linux-headers-4.4.0-137-generic linux-headers-4.4.0-138 linux-headers-4.4.0-138-generic linux-headers-4.4.0-139 linux-headers-4.4.0-139-generic linux-headers-4.4.0-141 linux-headers-4.4.0-141-generic
  linux-image-4.4.0-137-generic linux-image-4.4.0-138-generic linux-image-4.4.0-139-generic linux-image-4.4.0-141-generic linux-image-extra-4.4.0-137-generic linux-image-extra-4.4.0-138-generic linux-image-extra-4.4.0-139-generic linux-image-extra-4.4.0-141-generic
  linux-signed-image-4.4.0-137-generic linux-signed-image-4.4.0-138-generic linux-signed-image-4.4.0-139-generic linux-signed-image-4.4.0-141-generic thermald
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
  linux-image-unsigned-4.4.0-143-generic
Suggested packages:
  fdutils linux-doc-4.4.0 | linux-source-4.4.0 linux-tools
The following packages will be REMOVED:
  linux-generic* linux-image-4.4.0-143-generic* linux-image-generic* linux-signed-generic*
The following NEW packages will be installed:
  linux-image-unsigned-4.4.0-143-generic
0 upgraded, 1 newly installed, 4 to remove and 140 not upgraded.
Need to get 7,049 kB of archives.
After this operation, 386 kB of additional disk space will be used.
Do you want to continue? [Y/n] n
imkzh
  • 121
  • Looks like it wants to remove all kernels, and install linux-image-unsigned-4.4.0-143-generic. Not sure why though. – mikewhatever Mar 18 '19 at 02:20
  • Have you tried the latest Nvidia driver for your card? Nvidia may have fixed the (upstream) problem which finally hit the 4.4.0-143 kernel release. – ubfan1 Mar 18 '19 at 02:43
  • @ubfan1 i’ve not tried that yet, but according to some threads on nvidia forum, there are still problems with the latest kernel. and upgrading to a new driver may corrupt my programming environment, thank you. – imkzh Mar 18 '19 at 02:51

1 Answers1

0

I’ve found the answer myself with the hints from deleted answer by @mikewhatever. (see him in comments, https://askubuntu.com/users/20054/mikewhatever)

The reason is some package is depending on either linux-image-4.4.0-143-generic or linux-image-unsigned-4.4.0-143-generic. So simply purging the signed kernel will trigger an automatic installation of the unsigned one to satisfy the dependency.

So I checked the reverse dependency of linux-image-4.4.0-143-generic

# apt-cache rdepends linux-image-4.4.0-143-generic
linux-image-4.4.0-143-generic
Reverse Depends:
 |linux-image-generic
 |linux-modules-extra-4.4.0-143-generic
 |linux-image-virtual
  linux-image-unsigned-4.4.0-143-generic

And purged all of those reported. Then I am able to purge linux-image-4.4.0-143-generic painlessly.

see: apt-get -- remove triggers a package install?

thyu
  • 477
  • 1
  • 4
  • 9
imkzh
  • 121
  • Also see https://askubuntu.com/a/1119643/66509 . The linux-image-generic should be removed if you do not want to get latest kernel. – N0rbert Mar 18 '19 at 07:36