On my laptop, I have several gigs of old kernels lying around, with package names such as linux-image-some_number-generic, linux-image-extra-some_number-generic, linux-headers-some_number, linux-headers-some_number-generic. I want to remove those old kernels, but in a 'safe' way, without inadvertently breaking my system. More specifically, I want to use the package manager aptitude.

I first discovered, from the question 'What does it mean that a package is "set to manually installed?"', that aptitude would not remove these old kernels because they were installed 'manually'. This flag can easily be changed to an 'automatic' flag, which I did. But aptitude is not removing the old kernels regardless.

While trying to figure out why aptitude does not remove these packages, I came across the question 'Can I see why a package is installed?'. Running the command

aptitude why linux-image-some_number-generic

gave me the output

i   nautilus                        Suggests totem | mp3-decoder
p   vlc-nox                         Provides mp3-decoder        
p   vlc-nox                         Depends  libcrystalhd3      
p   libcrystalhd3                   Suggests firmware-crystalhd 
p   firmware-crystalhd              Suggests linux-image        
i A linux-image-some_number-generic Provides linux-image        

It seems that the packages linux-image-some_number-generic provide 'linux-image', which is suggested by a package I do not even have installed!

It seems that apt-get does not mind removing the old kernels (see also the comments to the accepted answer of the question 'Is aptitude still considered superior to apt-get?'). Running the command

sudo apt-get autoremove

produces the desired result; apt-get asks me if I want to remove all of the packages that I flagged 'automatic'.

My question is the following: How do I make aptitude remove these packages in a way such that aptitude ensures that no dependencies are broken?

EDIT: The following unanswered question seems to be related: Aptitude conflicts with apt-get. EDIT: The following question may also be related: aptitude ugrade does not change my kernel. EDIT: I found a question on unix stackexchange which may also be related: Aptitude doesn't remove automatically installed packages.

  • Great question! aptitude does all my package management work except for this. – Organic Marble Mar 8 '17 at 14:49

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Browse other questions tagged or ask your own question.