dependency problems prevent configuration of linux-headers-virtual

19,476

Solution 1

Preface: It was a bit of a question-answers session. This answer summarizes the steps leading solution (omitting some dead-ends).

At first we needed some information about the system. (It can be retrieved by opening a terminal window and running the given commands at the prompt.):

  • The currently used kernel: uname -r
  • The currently installed kernel and header packages: dpkg --list linux-[hi]* | cat
  • The current architecture: dpkg --print-architecture
  • The free disk space in the system: df -h
  • The free inodes in the system: df -i

The root of the unmet dependencies problem was the lack of free space/inodes at some time. When installing kernels/headers it is always advised to have at least 150 MB of free space in /lib (or /root if you have used the automatic partitioning method at installation). Also the number of free inodes should not near 100%, because a lot of files are installed along these packages.

After making sure to have enough free space to hold these files we proceeded to install the missing packages by downloading them and using dpkg --install package.deb. (Please note when installing packages by hand you are responsible to fulfil the package dependencies. In this case we could not use apt, simply because the system was in an inconsistent state and it did not work.)

We needed to determine which packages were missing. It was hinted in the dependency error messages from the dpkg (apt) command.

To fulfil the first dependency:

linux-headers-virtual : Depends: linux-headers-3.2.0-44-virtual but it is not installed

The following package was needed:

  • linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb

To fulfil the second (and further) dependencies:

linux-virtual : Depends: linux-image-virtual (= 3.2.0.44.53) but 3.2.0.45.54 is installed

The following packages were needed:

  • linux-virtual_3.2.0.48.58_amd64.deb
  • linux-headers-3.2.0-48-virtual_3.2.0-48.74_amd64.deb
  • linux-headers-3.2.0-48_3.2.0-48.74_all.deb
  • linux-headers-virtual_3.2.0.48.58_amd64.deb

Locating the packages was a bit of a quest. But you can retrieve them by using the following method:

  • Open The Linux Kernel Launchpad page.
  • Click „All Packages”,
  • select „Precise” Distribution series and „linux” or „linux-meta” Source package, then
  • select the version you're looking for.
  • Click on the appropriate binary package and
  • select your package from the list.
  • Take a look at the downloadable files.

To install a downloaded package:

  • Save it in a directory,
  • cd inside and
  • use dpkg --install downloaded_package_name.deb to install the package.

Make sure you leave the directory before running dpkg --list queries.

After meeting all the dependencies, you can run

apt-get update && apt-get upgrade

And no error messages should appear. There might be new/updated packages since the system was not able to update itself since a while.

Solution 2

A much, much simpler solution that doesn't involve manually downloading packages and bypassing package signing, etc:

sudo apt-get remove linux-headers-virtual linux-virtual  
sudo apt-get install linux-headers-virtual linux-virtual
sudo apt-get -f install
sudo apt-get autoremove

The last two steps are optional and just verify the install, and clean up, respectively.

Solution 3

Try this. Just press Ctrl+Alt+T on your keyboard to open Terminal. When it opens, run the command(s) below:

sudo dpkg --configure --pending
sudo apt-get clean
sudo apt-get update && sudo apt-get upgrade
Share:
19,476
jagb
Author by

jagb

Updated on September 18, 2022

Comments

  • jagb
    jagb over 1 year

    I'm running Ubuntu 12.04.2 LTS on a virtual box and have run into a little problem. Whenever I try to do an upgrade, I get:

    apt-get upgrade
    
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these.
    The following packages have unmet dependencies:
     linux-headers-virtual : Depends: linux-headers-3.2.0-44-virtual but it is not installed
     linux-virtual : Depends: linux-image-virtual (= 3.2.0.44.53) but 3.2.0.45.54 is installed
    E: Unmet dependencies. Try using -f.
    

    If however, I try -f install (as suggested), I get:

    apt-get -f install
    
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Correcting dependencies... Done
    The following extra packages will be installed:
      linux-headers-virtual linux-virtual
    The following packages will be upgraded:
      linux-headers-virtual linux-virtual
    2 upgraded, 0 newly installed, 0 to remove and 38 not upgraded.
    2 not fully installed or removed.
    Need to get 0 B/4,234 B of archives.
    After this operation, 0 B of additional disk space will be used.
    Do you want to continue [Y/n]? y
    dpkg: dependency problems prevent configuration of linux-headers-virtual:
     linux-headers-virtual depends on linux-headers-3.2.0-44-virtual; however:
      Package linux-headers-3.2.0-44-virtual is not installed.
    dpkg: error processing linux-headers-virtual (--configure):
     dependency problems - leaving unconfigured
    No apport report written because the error message indicates its a followup error from a previous failure.
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-image-virtual (= 3.2.0.44.53); however:
      Version of linux-image-virtual on system is 3.2.0.45.54.
     linux-virtual depends on linux-headers-virtual (= 3.2.0.44.53); however:
      Package linux-headers-virtual is not configured yet.
    dpkg: error processing linux-virtual (--configure):
     dependency problems - leaving unconfigured
    No apport report written because the error message indicates its a followup error from a previous failure.
    Errors were encountered while processing:
     linux-headers-virtual
     linux-virtual
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    

    Any ideas/suggestions on how to fix this issue? Thanks in advance.

    PS: I have tried with apt-get autoremove and autoclean with no luck.


    Following Mitch's suggestion, I tried dpkg --configure --pending, without any luck either. Same errors. I also tried the other two commands suggested, but their output do not add any other info to what is provided already:

    sudo dpkg --configure --pending
    
    dpkg: dependency problems prevent configuration of linux-headers-virtual:
     linux-headers-virtual depends on linux-headers-3.2.0-44-virtual; however:
      Package linux-headers-3.2.0-44-virtual is not installed.
    dpkg: error processing linux-headers-virtual (--configure):
     dependency problems - leaving unconfigured
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-image-virtual (= 3.2.0.44.53); however:
      Version of linux-image-virtual on system is 3.2.0.45.54.
     linux-virtual depends on linux-headers-virtual (= 3.2.0.44.53); however:
      Package linux-headers-virtual is not configured yet.
    dpkg: error processing linux-virtual (--configure):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     linux-headers-virtual
     linux-virtual
    

    As lgarzo requested, here is some info:

    uname -r
    3.2.0-45-virtual
    
    dpkg --list linux-[hi]* | cat
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
    |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
    ||/ Name                            Version                      Description
    +++-===============================-============================-===================================================================
    =====
    un  linux-headers                   <none>                       (no description available)
    un  linux-headers-3                 <none>                       (no description available)
    un  linux-headers-3.0               <none>                       (no description available)
    un  linux-headers-3.2.0-36          <none>                       (no description available)
    un  linux-headers-3.2.0-36-virtual  <none>                       (no description available)
    un  linux-headers-3.2.0-37          <none>                       (no description available)
    un  linux-headers-3.2.0-37-virtual  <none>                       (no description available)
    un  linux-headers-3.2.0-38          <none>                       (no description available)
    un  linux-headers-3.2.0-38-virtual  <none>                       (no description available)
    un  linux-headers-3.2.0-39          <none>                       (no description available)
    un  linux-headers-3.2.0-39-virtual  <none>                       (no description available)
    un  linux-headers-3.2.0-40          <none>                       (no description available)
    un  linux-headers-3.2.0-40-virtual  <none>                       (no description available)
    un  linux-headers-3.2.0-41          <none>                       (no description available)
    un  linux-headers-3.2.0-41-virtual  <none>                       (no description available)
    ii  linux-headers-3.2.0-43          3.2.0-43.68                  Header files related to Linux kernel version 3.2.0
    ii  linux-headers-3.2.0-43-virtual  3.2.0-43.68                  Linux kernel headers for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-headers-3.2.0-44          3.2.0-44.69                  Header files related to Linux kernel version 3.2.0
    in  linux-headers-3.2.0-44-virtual  <none>                       (no description available)
    ii  linux-headers-3.2.0-45          3.2.0-45.70                  Header files related to Linux kernel version 3.2.0
    ii  linux-headers-3.2.0-45-virtual  3.2.0-45.70                  Linux kernel headers for version 3.2.0 on 64 bit x86 Virtual Guests
    iU  linux-headers-virtual           3.2.0.44.53                  Linux kernel headers for virtual machines
    un  linux-image                     <none>                       (no description available)
    un  linux-image-3.0                 <none>                       (no description available)
    ii  linux-image-3.2.0-23-virtual    3.2.0-23.36                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-30-virtual    3.2.0-30.48                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-31-virtual    3.2.0-31.50                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-32-virtual    3.2.0-32.51                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-33-virtual    3.2.0-33.52                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-34-virtual    3.2.0-34.53                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-35-virtual    3.2.0-35.55                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-36-virtual    3.2.0-36.57                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    rc  linux-image-3.2.0-37-virtual    3.2.0-37.58                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    rc  linux-image-3.2.0-38-virtual    3.2.0-38.61                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    rc  linux-image-3.2.0-39-virtual    3.2.0-39.62                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    rc  linux-image-3.2.0-40-virtual    3.2.0-40.64                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    rc  linux-image-3.2.0-41-virtual    3.2.0-41.66                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-43-virtual    3.2.0-43.68                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-44-virtual    3.2.0-44.69                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-3.2.0-45-virtual    3.2.0-45.70                  Linux kernel image for version 3.2.0 on 64 bit x86 Virtual Guests
    ii  linux-image-virtual             3.2.0.45.54                  Linux kernel image for virtual machines
    un  linux-initramfs-tool            <none>                       (no description available)
    

    Free space, as requested:

    df -h
    
    Filesystem              Size  Used Avail Use% Mounted on
    /dev/mapper/cacti-root  3.2G  1.6G  1.5G  53% /
    udev                    239M  4.0K  239M   1% /dev
    tmpfs                    97M  236K   97M   1% /run
    none                    5.0M     0  5.0M   0% /run/lock
    none                    243M     0  243M   0% /run/shm
    /dev/sda1               228M   82M  134M  38% /boot
    

    One thing I should mention is that, in fact I didn't have enough inodes left (df -i showed 100% IUse% for /dev/mapper/cacti-root). I had to manually remove files from /usr/src/linux-headers-X.X.X-XX for older versions. Now, however it is not the problem anymore.


    First of all, thanks for your help lgarzo. I have tried to install linux-headers-3.2.0-44-virtual as suggested. Here is the output:

    dpkg --install linux-headers-3.2.0-44-virtual
    
    dpkg: error processing linux-headers-3.2.0-44-virtual (--install):
     cannot access archive: No such file or directory
    Errors were encountered while processing:
     linux-headers-3.2.0-44-virtual
    

    Having checked /usr/src/ for the needed files, it seems that precisely those from linux-headers-3.2.0-44-virtual are missing:

    cd /usr/src/
    ls -l
    
    total 20
    drwxr-xr-x 24 root root 4096 May 16 06:57 linux-headers-3.2.0-43
    drwxr-xr-x  7 root root 4096 May 16 06:57 linux-headers-3.2.0-43-virtual
    drwxr-xr-x 24 root root 4096 May 24 06:41 linux-headers-3.2.0-44
    drwxr-xr-x 24 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45
    drwxr-xr-x  7 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45-virtual
    

    I have both the plain and virtual for ...-43 and ...-45, but not the virtual pack for ...-44. It seems that the inodes problem raised during that automatic upgrade on 24th May and it was left half made.

    Is there any way to download and extract those files so that dpkg --install do not fail? Thanks.


    Ok, it seems we are moving somewhere (hope in the right direction). I have downloaded linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb and tried to do dpkg -install. Now it complains for another reasons :(

    # wget http://launchpadlibrarian.net/140046439/linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb
    --2013-06-12 09:49:51--  http://launchpadlibrarian.net/140046439/linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb
    Resolving launchpadlibrarian.net (launchpadlibrarian.net)... 91.189.89.228, 91.189.89.229
    Connecting to launchpadlibrarian.net (launchpadlibrarian.net)|91.189.89.228|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 979370 (956K) [application/x-debian-package]
    Saving to: `linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb'
    
    100%[==========================================================================================>] 979,370     --.-K/s   in 0.04s
    
    2013-06-12 09:49:51 (22.9 MB/s) - `linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb' saved [979370/979370]
    
    
    # dpkg --install linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb
    Selecting previously unselected package linux-headers-3.2.0-44-virtual:i386.
    (Reading database ... 89164 files and directories currently installed.)
    Unpacking linux-headers-3.2.0-44-virtual:i386 (from linux-headers-3.2.0-44-virtual_3.2.0-44.69_i386.deb) ...
    dpkg: dependency problems prevent configuration of linux-headers-3.2.0-44-virtual:i386:
     linux-headers-3.2.0-44-virtual:i386 depends on linux-headers-3.2.0-44.
     linux-headers-3.2.0-44-virtual:i386 depends on libc6 (>= 2.11).
    dpkg: error processing linux-headers-3.2.0-44-virtual:i386 (--install):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     linux-headers-3.2.0-44-virtual:i386
    

    The files are extracted correctly to /usr/src/, but I suppose there are some steps to follow yet.

    # cd /usr/src
    # ls -l
    total 24
    drwxr-xr-x 24 root root 4096 May 16 06:57 linux-headers-3.2.0-43
    drwxr-xr-x  7 root root 4096 May 16 06:57 linux-headers-3.2.0-43-virtual
    drwxr-xr-x 24 root root 4096 May 24 06:41 linux-headers-3.2.0-44
    drwxr-xr-x  7 root root 4096 Jun 12 09:37 linux-headers-3.2.0-44-virtual
    drwxr-xr-x 24 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45
    drwxr-xr-x  7 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45-virtual
    

    Any idea? (Thanks a lot for your patience and support).


    # dpkg --list linux-headers-3.2.0-44 libc6 linux-virtual | cat
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
    |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
    ||/ Name                                Version                      Description
    +++-===================================-============================-=============================================================
    ii  libc6                               2.15-0ubuntu10.3             Embedded GNU C Library: Shared libraries
    ii  linux-headers-3.2.0-44              3.2.0-44.69                  Header files related to Linux kernel version 3.2.0
    iU  linux-virtual                       3.2.0.44.53                  Complete Linux kernel for virtual machines
    

    Having seen the uppercase U besides linux-virtual, I have also tried:

    # apt-get install linux-virtual
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these:
    The following packages have unmet dependencies:
     linux-headers-3.2.0-44-virtual:i386 : Depends: linux-headers-3.2.0-44:i386 but it is not installable
                                           Depends: libc6:i386 (>= 2.11) but it is not going to be installed
     linux-headers-virtual : Depends: linux-headers-3.2.0-44-virtual but it is not going to be installed
     linux-virtual : Depends: linux-headers-virtual (= 3.2.0.45.54) but 3.2.0.44.53 is to be installed
    E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
    

    It is x64!!!

    # dpkg --print-architecture
    amd64
    

    I think downloading x64 files might help ;)


    Here are the steps I have made (along with their outputs), now that I realised that it was a 64bit machine.

    Download and install the correct .deb file

    # wget http://launchpadlibrarian.net/140040575/linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb
    --2013-06-14 08:08:49--  http://launchpadlibrarian.net/140040575/linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb
    Resolving launchpadlibrarian.net (launchpadlibrarian.net)... 91.189.89.229, 91.189.89.228
    Connecting to launchpadlibrarian.net (launchpadlibrarian.net)|91.189.89.229|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 983134 (960K) [application/x-debian-package]
    Saving to: `linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb'
    
    100%[==========================================================================================>] 983,134      151K/s   in 20s
    
    2013-06-14 08:09:10 (48.7 KB/s) - `linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb' saved [983134/983134]
    
    # dpkg --install linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb
    (Reading database ... 89164 files and directories currently installed.)
    Unpacking linux-headers-3.2.0-44-virtual (from linux-headers-3.2.0-44-virtual_3.2.0-44.69_amd64.deb) ...
    Setting up linux-headers-3.2.0-44-virtual (3.2.0-44.69) ...
    

    Check the contents of /usr/src directory

    # cd /usr/src
    # ls -l
    total 24
    drwxr-xr-x 24 root root 4096 May 16 06:57 linux-headers-3.2.0-43
    drwxr-xr-x  7 root root 4096 May 16 06:57 linux-headers-3.2.0-43-virtual
    drwxr-xr-x 24 root root 4096 May 24 06:41 linux-headers-3.2.0-44
    drwxr-xr-x  7 root root 4096 Jun 14 08:12 linux-headers-3.2.0-44-virtual
    drwxr-xr-x 24 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45
    drwxr-xr-x  7 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45-virtual
    

    Try to apt-get update & upgrade

    # apt-get update
    [...]
    [Ends successfully]
    
    # apt-get upgrade
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    You might want to run 'apt-get -f install' to correct these.
    The following packages have unmet dependencies:
     linux-virtual : Depends: linux-image-virtual (= 3.2.0.44.53) but 3.2.0.45.54 is installed
    E: Unmet dependencies. Try using -f.
    

    It fails, complaining, so I try with -f(orce) flag

    # apt-get -f upgrade
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    Correcting dependencies... Done
    The following NEW packages will be installed:
      linux-headers-3.2.0-48 linux-headers-3.2.0-48-virtual linux-image-3.2.0-48-virtual
    The following packages have been kept back:
      mysql-client-5.5 mysql-server-5.5 mysql-server-core-5.5
    The following packages will be upgraded:
      aptitude bash dmsetup isc-dhcp-client isc-dhcp-common libc-bin libc6 libdbus-1-3 libdevmapper-event1.02.1 libdevmapper1.02.1
      libdrm-intel1 libdrm-nouveau1a libdrm-radeon1 libdrm2 libgnutls26 libmysqlclient18 libplymouth2 libssl1.0.0 libudev0 libx11-6
      libx11-data libxcb-render0 libxcb-shm0 libxcb1 libxrender1 linux-headers-virtual linux-image-virtual linux-virtual lvm2
      multiarch-support mysql-client-core-5.5 mysql-common mysql-server openssl plymouth python-apt python-apt-common rsyslog udev
    39 upgraded, 3 newly installed, 0 to remove and 3 not upgraded.
    2 not fully installed or removed.
    Need to get 42.6 MB of archives.
    After this operation, 102 MB of additional disk space will be used.
    Do you want to continue [Y/n]? y
    Get:1 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main linux-image-3.2.0-48-virtual amd64 3.2.0-48.74 [12.5 MB]
    Get:2 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main linux-virtual amd64 3.2.0.48.58 [1,758 B]
    Get:3 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main linux-image-virtual amd64 3.2.0.48.58 [2,390 B]
    Get:4 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main linux-headers-3.2.0-48 all 3.2.0-48.74 [11.7 MB]
    Get:5 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main libc-bin amd64 2.15-0ubuntu10.4 [1,181 kB]
    Get:6 http://es.archive.ubuntu.com/ubuntu/ precise-updates/main libc6 amd64 2.15-0ubuntu10.4 [4,653 kB]
    [...]
    Found linux image: /boot/vmlinuz-3.2.0-43-virtual
    Found initrd image: /boot/initrd.img-3.2.0-43-virtual
    Found linux image: /boot/vmlinuz-3.2.0-36-virtual
    Found initrd image: /boot/initrd.img-3.2.0-36-virtual
    Found linux image: /boot/vmlinuz-3.2.0-35-virtual
    Found initrd image: /boot/initrd.img-3.2.0-35-virtual
    Found linux image: /boot/vmlinuz-3.2.0-34-virtual
    Found initrd image: /boot/initrd.img-3.2.0-34-virtual
    done
    Setting up linux-image-virtual (3.2.0.48.58) ...
    Setting up linux-headers-3.2.0-48 (3.2.0-48.74) ...
    Setting up linux-headers-3.2.0-48-virtual (3.2.0-48.74) ...
    Setting up linux-headers-virtual (3.2.0.44.53) ...
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-image-virtual (= 3.2.0.44.53); however:
      Version of linux-image-virtual on system is 3.2.0.48.58.
    dpkg: error processing linux-virtual (--configure):
     dependency problems - leaving unconfigured
    No apport report written because the error message indicates its a followup error from a previous failure.
    Setting up libdbus-1-3 (1.4.18-1ubuntu1.4) ...
    Setting up libdrm2 (2.4.43-0ubuntu0.0.1) ...
    Setting up libdrm-intel1 (2.4.43-0ubuntu0.0.1) ...
    Setting up libdrm-nouveau1a (2.4.43-0ubuntu0.0.1) ...
    [...]
    update-initramfs: deferring update (trigger activated)
    Processing triggers for libc-bin ...
    ldconfig deferred processing now taking place
    Processing triggers for initramfs-tools ...
    update-initramfs: Generating /boot/initrd.img-3.2.0-48-virtual
    Errors were encountered while processing:
     linux-virtual
    E: Sub-process /usr/bin/dpkg returned an error code (1)
    #
    

    It fails again, complaining about linux-virtual too. The only difference is that, since i run with -f(orce) flag set, now I have 3.2.0.48.58 installed too.

    Previously the complaint was:
    linux-virtual depends on linux-image-virtual (= 3.2.0.44.53) but 3.2.0.45.54 is installed
    Now it is:
    linux-virtual depends on linux-image-virtual (= 3.2.0.44.53) but 3.2.0.48.58 is installed

    #  dpkg --configure linux-virtual
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-image-virtual (= 3.2.0.44.53); however:
      Version of linux-image-virtual on system is 3.2.0.48.58.
    dpkg: error processing linux-virtual (--configure):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     linux-virtual
    
    # ls -l /usr/src
    total 32
    drwxr-xr-x 24 root root 4096 May 16 06:57 linux-headers-3.2.0-43
    drwxr-xr-x  7 root root 4096 May 16 06:57 linux-headers-3.2.0-43-virtual
    drwxr-xr-x 24 root root 4096 May 24 06:41 linux-headers-3.2.0-44
    drwxr-xr-x  7 root root 4096 Jun 14 08:12 linux-headers-3.2.0-44-virtual
    drwxr-xr-x 24 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45
    drwxr-xr-x  7 root root 4096 Jun  6 14:48 linux-headers-3.2.0-45-virtual
    drwxr-xr-x 24 root root 4096 Jun 14 08:16 linux-headers-3.2.0-48
    drwxr-xr-x  7 root root 4096 Jun 14 08:16 linux-headers-3.2.0-48-virtual
    
    # dpkg --list linux-headers-3.2.0-44 libc6 linux-virtual | cat
    Desired=Unknown/Install/Remove/Purge/Hold
    | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
    |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
    ||/ Name                                Version                      Description
    +++-===================================-============================-===============================================================
    ii  libc6                               2.15-0ubuntu10.4             Embedded GNU C Library: Shared libraries
    ii  linux-headers-3.2.0-44              3.2.0-44.69                  Header files related to Linux kernel version 3.2.0
    iU  linux-virtual                       3.2.0.44.53                  Complete Linux kernel for virtual machines
    
    # uname -r
    3.2.0-45-virtual
    

    Any more ideas?

    If you still think that the easiest way to follow on is falling back to a previous kernel version and let it update again from there, I think we can use 3.2.0.43 since I have linux-headers-3.2.0-43 and linux-headers-3.2.0-43-virtual under /usr/src/ and also all the needed files in /boot/

    # ls -l /boot/*3.2.0-43*
    -rw-r--r-- 1 root root  794949 May 15 06:33 /boot/abi-3.2.0-43-virtual
    -rw-r--r-- 1 root root  140637 May 15 06:33 /boot/config-3.2.0-43-virtual
    -rw-r--r-- 1 root root 4791807 May 16 06:57 /boot/initrd.img-3.2.0-43-virtual
    -rw------- 1 root root 2890123 May 15 06:33 /boot/System.map-3.2.0-43-virtual
    -rw------- 1 root root 4961104 May 15 06:33 /boot/vmlinuz-3.2.0-43-virtual
    

    Thanks.


    It prevents me from installing it too:

    # wget http://launchpadlibrarian.net/141816244/linux-virtual_3.2.0.48.58_amd64.deb
    --2013-06-14 11:42:37--  http://launchpadlibrarian.net/141816244/linux-virtual_3.2.0.48.58_amd64.deb
    Resolving launchpadlibrarian.net (launchpadlibrarian.net)... 91.189.89.228, 91.189.89.229
    Connecting to launchpadlibrarian.net (launchpadlibrarian.net)|91.189.89.228|:80... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 1758 (1.7K) [application/x-debian-package]
    Saving to: `linux-virtual_3.2.0.48.58_amd64.deb'
    
    100%[==========================================================================================>] 1,758       --.-K/s   in 0s
    
    2013-06-14 11:42:37 (184 MB/s) - `linux-virtual_3.2.0.48.58_amd64.deb' saved [1758/1758]
    
    # dpkg --install linux-virtual_3.2.0.48.58_amd64.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-virtual 3.2.0.44.53 (using linux-virtual_3.2.0.48.58_amd64.deb) ...
    Unpacking replacement linux-virtual ...
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-headers-virtual (= 3.2.0.48.58); however:
      Version of linux-headers-virtual on system is 3.2.0.44.53.
    dpkg: error processing linux-virtual (--install):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     linux-virtual
    

    Download the two .deb files

    # wget http://launchpadlibrarian.net/141821073/linux-headers-3.2.0-48-virtual_3.2.0-48.74_amd64.deb
    [...]
    
    # wget http://launchpadlibrarian.net/141823437/linux-headers-3.2.0-48_3.2.0-48.74_all.deb
    [...]
    

    Install them

    # dpkg --install linux-headers-3.2.0-48-virtual_3.2.0-48.74_amd64.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-headers-3.2.0-48-virtual 3.2.0-48.74 (using linux-headers-3.2.0-48-virtual_3.2.0-48.74_amd64.deb) ...
    Unpacking replacement linux-headers-3.2.0-48-virtual ...
    Setting up linux-headers-3.2.0-48-virtual (3.2.0-48.74) ...
    
    # dpkg --install linux-headers-3.2.0-48_3.2.0-48.74_all.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-headers-3.2.0-48 3.2.0-48.74 (using linux-headers-3.2.0-48_3.2.0-48.74_all.deb) ...
    Unpacking replacement linux-headers-3.2.0-48 ...
    Setting up linux-headers-3.2.0-48 (3.2.0-48.74) ...
    

    Try to install the original .deb package which dependencies did not met

    # dpkg --install linux-virtual_3.2.0.48.58_amd64.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-virtual 3.2.0.48.58 (using linux-virtual_3.2.0.48.58_amd64.deb) ...
    Unpacking replacement linux-virtual ...
    dpkg: dependency problems prevent configuration of linux-virtual:
     linux-virtual depends on linux-headers-virtual (= 3.2.0.48.58); however:
      Version of linux-headers-virtual on system is 3.2.0.44.53.
    dpkg: error processing linux-virtual (--install):
     dependency problems - leaving unconfigured
    Errors were encountered while processing:
     linux-virtual
    

    Since it still complains, I guess I should download and install the missing package. This step is on my own :)

    # wget http://launchpadlibrarian.net/141816242/linux-headers-virtual_3.2.0.48.58_amd64.deb
    [...]
    
    # dpkg --install linux-headers-virtual_3.2.0.48.58_amd64.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-headers-virtual 3.2.0.44.53 (using linux-headers-virtual_3.2.0.48.58_amd64.deb) ...
    Unpacking replacement linux-headers-virtual ...
    Setting up linux-headers-virtual (3.2.0.48.58) ...
    

    Try to install the package that gave errors

    # dpkg --install linux-virtual_3.2.0.48.58_amd64.deb
    (Reading database ... 120232 files and directories currently installed.)
    Preparing to replace linux-virtual 3.2.0.48.58 (using linux-virtual_3.2.0.48.58_amd64.deb) ...
    Unpacking replacement linux-virtual ...
    Setting up linux-virtual (3.2.0.48.58) ...
    

    And finally worked!!!!!

    # apt-get update
    [...]
    
    # apt-get upgrade
    [...]
    

    Everything is ok, and without errors. THANKS A LOT lgarzo!!!

    Please, post something as an answer (instead of a comment) so that I can give you credit for your invaluable help.

    Cheers.

  • jagb
    jagb almost 11 years
    Thanks for your quick response. Please have a look at the edits on the original question. Same errors in the 1st command. Any other idea?
  • James Thigpen
    James Thigpen over 9 years
    I had this exact same problem and these commands totally solved it. Thanks!!!
  • Garreth McDaid
    Garreth McDaid over 8 years
    Should be correct answer
  • Pete
    Pete over 7 years
    I appreciate the accepted answer because it gives me some insight into the problem. But this is a lot easier!
  • Anthony O.
    Anthony O. over 6 years
    It didn't work in my case: sudo apt-get remove linux-headers-server linux-image-server Reading package lists... Done Building dependency tree Reading state information... Done You might want to run 'apt-get -f install' to correct these: The following packages have unmet dependencies: linux-server : Depends: linux-image-server (= 3.2.0.122.137) but it is not going to be installed Depends: linux-headers-server (= 3.2.0.122.137) but it is not going to be installed E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).
  • Anthony O.
    Anthony O. over 6 years
    Finally this worked but I had to specify all the packages: sudo apt-get remove linux-headers-3.2.0-122-generic linux-headers-server linux-server and then reinstall linux-headers-server and linux-server