Unmet dependencies when I tried to free up unused kernels

5,379

I think your problem is that apt is trying to install/remove linux-image-generic-pae, which should point to the latest kernel available (which is linux-image-3.2.0-40-generic-pae) but the latest kernel you have installed is the *39.

So I suggest you to run the command suggested by apt with --dry-run (this will only simulate what apt would do):

sudo apt-get -f install --dry-run

This will let you know what apt is trying to do, and then you can decide if it is ok or not (if it tries to install the newest kernel that's ok, if it tries to remove the one you are using it may be better to try something else).

After that, probably the better way is to remove each kernel manually (in your apt-get purge output it seems to be selecting everyting correctly). You can specify each command alone or you can do something like:

for version in {29..38}; do
echo "Removing kernel 3.2.0-$version"
sudo apt-get remove linux-image-3.2.0-$version-generic-pae
done
Share:
5,379

Related videos on Youtube

CppLearner
Author by

CppLearner

Updated on September 18, 2022

Comments

  • CppLearner
    CppLearner over 1 year

    I am running 12.04.

    I read this https://askubuntu.com/a/90219/18876 as reference.

    I checked all the one I have.

    yeukhon@fubini:~$ aptitude search ~ilinux-image
    i   linux-image-3.2.0-29-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-31-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-32-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-33-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-34-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-35-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-36-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-37-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-38-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    i   linux-image-3.2.0-39-generic-pae     - Linux kernel image for version 3.2.0 on 32 bit 
    BB  linux-image-generic-pae              - Generic Linux kernel image
    

    I think I am using 39?

    yeukhon@fubini:~$ uname -a
    Linux fubini 3.2.0-39-generic-pae #62-Ubuntu SMP Wed Feb 27 22:25:11 UTC 2013 i686 i686 i386 GNU/Linux
    

    So I started purging as suggested in the reference.

    sudo apt-get purge linux-image-3.2.0-29 linux-image-3.2.0-30 linux-image-3.2.0-31 linux-image-3.2.0-32 linux-image-3.2.0-33 linux-image-3.2.0-34 linux-image-3.2.0-35 linux-image-3.2.0-36 linux-image-3.2.0-37 linux-image-3.2.0-38
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    Note, selecting 'linux-image-3.2.0-29-generic-pae' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-powerpc64-smp' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-virtual' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-generic' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-powerpc-smp' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-highbank' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-29-omap' for regex 'linux-image-3.2.0-29'
    Note, selecting 'linux-image-3.2.0-30-powerpc64-smp' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-highbank' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-powerpc-smp' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-virtual' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-generic' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-generic-pae' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-30-omap' for regex 'linux-image-3.2.0-30'
    Note, selecting 'linux-image-3.2.0-31-generic' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-generic-pae' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-highbank' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-omap' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-powerpc64-smp' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-powerpc-smp' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-31-virtual' for regex 'linux-image-3.2.0-31'
    Note, selecting 'linux-image-3.2.0-32-powerpc-smp' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-highbank' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-virtual' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-generic-pae' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-generic' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-powerpc64-smp' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-32-omap' for regex 'linux-image-3.2.0-32'
    Note, selecting 'linux-image-3.2.0-33-powerpc64-smp' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-powerpc-smp' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-omap' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-virtual' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-generic-pae' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-lowlatency-pae' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-generic' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-lowlatency' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-33-highbank' for regex 'linux-image-3.2.0-33'
    Note, selecting 'linux-image-3.2.0-34-generic-pae' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-powerpc64-smp' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-virtual' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-generic' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-powerpc-smp' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-highbank' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-34-omap' for regex 'linux-image-3.2.0-34'
    Note, selecting 'linux-image-3.2.0-35-powerpc-smp' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-generic-pae' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-omap' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-virtual' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-powerpc64-smp' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-generic' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-lowlatency-pae' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-lowlatency' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-35-highbank' for regex 'linux-image-3.2.0-35'
    Note, selecting 'linux-image-3.2.0-36-powerpc-smp' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-lowlatency' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-highbank' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-powerpc64-smp' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-generic-pae' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-virtual' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-lowlatency-pae' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-omap' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-36-generic' for regex 'linux-image-3.2.0-36'
    Note, selecting 'linux-image-3.2.0-37-virtual' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-generic' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-lowlatency' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-highbank' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-omap' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-powerpc64-smp' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-powerpc-smp' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-lowlatency-pae' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-37-generic-pae' for regex 'linux-image-3.2.0-37'
    Note, selecting 'linux-image-3.2.0-38-highbank' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-lowlatency' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-generic-pae' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-virtual' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-generic' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-lowlatency-pae' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-omap' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-powerpc64-smp' for regex 'linux-image-3.2.0-38'
    Note, selecting 'linux-image-3.2.0-38-powerpc-smp' for regex 'linux-image-3.2.0-38'
    Package linux-image-3.2.0-29-generic is not installed, so not removed
    Package linux-image-3.2.0-29-virtual is not installed, so not removed
    Package linux-image-3.2.0-30-generic is not installed, so not removed
    Package linux-image-3.2.0-30-generic-pae is not installed, so not removed
    Package linux-image-3.2.0-30-virtual is not installed, so not removed
    Package linux-image-3.2.0-31-generic is not installed, so not removed
    Package linux-image-3.2.0-31-virtual is not installed, so not removed
    Package linux-image-3.2.0-32-generic is not installed, so not removed
    Package linux-image-3.2.0-32-virtual is not installed, so not removed
    Package linux-image-3.2.0-33-generic is not installed, so not removed
    Package linux-image-3.2.0-33-virtual is not installed, so not removed
    Package linux-image-3.2.0-34-generic is not installed, so not removed
    Package linux-image-3.2.0-34-virtual is not installed, so not removed
    Package linux-image-3.2.0-35-generic is not installed, so not removed
    Package linux-image-3.2.0-35-virtual is not installed, so not removed
    Package linux-image-3.2.0-36-generic is not installed, so not removed
    Package linux-image-3.2.0-36-virtual is not installed, so not removed
    Package linux-image-3.2.0-37-generic is not installed, so not removed
    Package linux-image-3.2.0-37-virtual is not installed, so not removed
    Package linux-image-3.2.0-38-generic is not installed, so not removed
    Package linux-image-3.2.0-38-virtual is not installed, so not removed
    Package linux-image-3.2.0-33-lowlatency is not installed, so not removed
    Package linux-image-3.2.0-33-lowlatency-pae is not installed, so not removed
    Package linux-image-3.2.0-35-lowlatency is not installed, so not removed
    Package linux-image-3.2.0-35-lowlatency-pae is not installed, so not removed
    Package linux-image-3.2.0-36-lowlatency is not installed, so not removed
    Package linux-image-3.2.0-36-lowlatency-pae is not installed, so not removed
    Package linux-image-3.2.0-37-lowlatency is not installed, so not removed
    Package linux-image-3.2.0-37-lowlatency-pae is not installed, so not removed
    Package linux-image-3.2.0-38-lowlatency is not installed, so not removed
    Package linux-image-3.2.0-38-lowlatency-pae is not installed, so not removed
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     linux-image-generic-pae : Depends: linux-image-3.2.0-40-generic-pae but it is not going to be installed
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    Now I don't know how to proceed, especially I don't want to mess up the computer. Ideas? Thanks.


    Solution

    I found My /boot partition hit 100% and now I can't upgrade. Can't remove old kernels to make room later. Basically, I followed his advise by [removing] old vmlinuz initrd, abi and System.map files individually until I got enough free space. I only need to delete the first two.

    Then I do sudo apt-get install -f and finally use @Salem's little bash script to remove most of the old kernels. I kept the last two as suggested. Reboot at the end, and then if I do uname -a I will see the new kernel is now installed (in my case, that's 40).

  • CppLearner
    CppLearner about 11 years
    Thanks. I don't have enough disk space. I can't install the latest 40 as a result.
  • geethujoseph
    geethujoseph about 11 years
    Check if sudo apt-get clean gets you some space.
  • CppLearner
    CppLearner about 11 years
    Thanks. I managed to find this post askubuntu.com/questions/171209/… I basically individually deleted about two old kernels. I am trying now.
  • CppLearner
    CppLearner about 11 years
    Thanks. I just reboot. See my edit above. Thanks a lot.