autoremove after uninstalling libgv-php5 makes system unbootable

Bug #1193858 reported by Urop
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
graphviz (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

I'm reporting this bug against libgv-php5, since I believe this its dependencies may be the culprit... but I can't be 100% sure.

I am running Ubuntu 13.04 64bit. After doing

apt-get purge libgv-php5

to remove the PHP graphviz package, libgv-php5:amd64 (2.26.3-14ubuntu1), I started receiving prompts to do an autoremove when installing/uninstalling other packages. When I finally did this, my system crashed and became unbootable; not even into a recovery mode or with old kernels. This isn't very friendly, and whatever dependency problem caused it needs to be fixed.

Here is what the apt log said about the initial autoremove attempt:

Start-Date: 2013-06-22 23:31:30
Commandline: apt-get autoremove
Remove: lib64readline6:i386 (6.2-9ubuntu1), libpython3-stdlib:i386 (3.3.1-0ubuntu1), libpython2.7-stdlib:i386 (2.7.4-2ubuntu3), libpython2.7:i386 (2.7.4-2ubuntu3), lib64ncurses5:i386 (5.9-10ubuntu4), libpython3.3-minimal:i386 (3.3.1-1ubuntu5), libreadline6:i386 (6.2-9ubuntu1), libc6-amd64:i386 (2.17-0ubuntu5), libpython2.7-minimal:i386 (2.7.4-2ubuntu3), lib64tinfo5:i386 (5.9-10ubuntu4), libpython3.3-stdlib:i386 (3.3.1-1ubuntu5)
Error: Sub-process /usr/bin/dpkg returned an error code (1)
End-Date: 2013-06-22 23:31:45

On investigation, it appears that this autoremove somehow broke the following links within /lib64

ld-lsb-x86-64.so.3 -> ld-linux-x86-64.so.2
ld-lsb-x86-64.so.2 -> ld-linux-x86-64.so.2
ld-linux-x86-64.so.2 -> ld-2.17.so

thus breaking bash, ls etc...

I managed to recover as follows:
1. I created a live installation on a USB key and booted from it.
2. I could not chroot into the system from the live install because of the broken links, so I had to fix them with from within /lib64:
    sudo ln -s ../lib/x86_64-linux-gnu/ld-2.17.so ld-linux-x86-64.so.2
    Then I could chroot into the system from the live install.
3. Once chrooted into the system, I tried

root@ubuntu:/# apt-get install -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
Correcting dependencies... Done
The following packages were automatically installed and are no longer required:
  libpython2.7-minimal:i386 libpython2.7-stdlib:i386 libpython3.3-minimal:i386 libpython3.3-stdlib:i386 libreadline6:i386
Use 'apt-get autoremove' to remove them.
The following packages will be REMOVED:
  libc6-amd64:i386 libpython2.7:i386
0 upgraded, 0 newly installed, 2 to remove and 0 not upgraded.
6 not fully installed or removed.
Need to get 134 kB of archives.
After this operation, 14.1 MB disk space will be freed.
Do you want to continue [Y/n]?
Get:1 http://mirror.ox.ac.uk/sites/archive.ubuntu.com/ubuntu/ raring/main libreadline6 i386 6.2-9ubuntu1 [134 kB]
Fetched 134 kB in 0s (305 kB/s)
(Reading database ... 320194 files and directories currently installed.)
Removing libc6-amd64 ...
Removing libpython2.7:i386 ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place
Setting up libpython3.3-minimal:i386 (3.3.1-1ubuntu5) ...
dpkg: error processing libreadline6:i386 (--configure):
 package libreadline6:i386 is not ready for configuration
 cannot configure (current status `half-installed')
Setting up libpython2.7-minimal:i386 (2.7.4-2ubuntu3) ...
Errors were encountered while processing:
 libreadline6:i386
E: Sub-process /usr/bin/dpkg returned an error code (1)

which I managed to recover from by doing...

root@ubuntu:/# apt-get -f install --reinstall libreadline6:i386
...
root@ubuntu:/# apt-get install -f
...
root@ubuntu:/# apt-get autoremove

Then, on exiting from the chroot I was able to reboot my system. Everything seems to be running smoothly now. I have done apt-get clean, apt-get update, apt-get upgrade and it seems happy enough.

Full details of the problem and how I was able to recover can be found here: http://ubuntuforums.org/showthread.php?t=2156721

Revision history for this message
Jan Rheinländer (jrheinlaender) wrote :

I can confirm this bug. I think I got into this problem by install gdb64 and then removing it again. A subsequent apt-get autoremove removed the link to ld-2.17.so in /lib64.

I was able to recover much more easily by prefixing busybox to the ln command (since busybox seems to be statically linked it does not require the missing link in /lib64).

the.sunshaine (brain195)
Changed in graphviz (Ubuntu):
status: New → Confirmed
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.