libc-bin/libc6 inverted deps causes nss to fail and can make dpkg-statoverride explode, killing the upgrade

Bug #1086548 reported by James Troup
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
update-manager (Ubuntu)
New
Medium
Unassigned

Bug Description

I've just had a lucid -> precise upgrade explode in my face. libc-bin
was installed before libc6 and as a result, there was a period where
nss was broken, after libc-bin had been upgraded, but before libc6
had. nss being broken caused dpkg-statoverride to explode on almost
any use (because there was a override that used a group provided by
NSS, not in /etc/group). dpkg-statoverride failing caused the libc6
install to fail and subsequently do-release-upgrade also. I've
attached the dist-upgrade logs from the failed run.

Tags: patch
Revision history for this message
James Troup (elmo) wrote :
Revision history for this message
James Troup (elmo) wrote :

FWIW, I worked around this by manually deleting the NSS based group
from /var/lib/dpkg/statoverride.

Adam tells me the inverted libc6/libc-bin dependency has been fixed in
raring. He's understandably queasy about doing that kind of a change
as an SRU. Other ways this could be fixed/worked around is by having
the release upgrader check for statoverrides that use non-local users
or groups and deleting them (temporarily?). Or perhaps
dpkg-statoverride itself should be fixed to not consider this
particular case terminal.

This is the first time I've run into such a case and I realise it's
not necessarily going to be a comon one, so if the consensus is that
this is not worth fixing, that's also OK by me. (I've already updated
our LTS upgrade instructions with a workaround.)

Revision history for this message
Michael Vogt (mvo) wrote :

Hi, looking at the logs it seems to be relatively specific to the setup in use. Adding a workaround is easy enough for the specific case, I attached it here.

Making this general is a bit more tricky, but would involve scanning /etc/passwd and /etc/group and then comparing that to the dpkg-statusoverride --list output.

tags: added: patch
Changed in update-manager (Ubuntu):
importance: Undecided → Medium
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.