Bug#555644: libc6: fails to update from << 2.10 -- incorrect invoke-rc.d call in postinst script
Package: libc6
Version: 2.10.1-6
Severity: serious
Hi,
when updating a sid/amd64 chroot (on a lenny(+older squeeze kernel)/amd64 host),
libc6 fails to update properly.
Last previous update was performed on Oct 12, no problems at that time.
This time, libc6 was going to be updated from 2.9-27 to 2.10.1-6 and
configuration fails with:
(since I didn't keep the original error message
and it was way to messed up by a lot of packages failing with
unconfigured libc6, I can still reproduce the problem by manually
reinstalling libc6)
# dpkg -i /var/cache/apt/archives/libc6_2.10.1-6_amd64.deb
(Reading database ... 28139 files and directories currently installed.)
Preparing to replace libc6 2.10.1-6 (using .../libc6_2.10.1-6_amd64.deb) ...
Unpacking replacement libc6 ...
Setting up libc6 (2.10.1-6) ...
Checking for services that may need to be restarted...
Checking init scripts...
invoke-rc.d: unknown initscript, /etc/init.d/-query not found.
dpkg: error processing libc6 (--install):
subprocess installed post-installation script returned error exit status 100
Errors were encountered while processing:
libc6
One reason for this are some incorrect calls to invoke-rc.d:
# grep " -query" /var/lib/dpkg/info/*
/var/lib/dpkg/info/libc6.postinst: invoke-rc.d -query ${service} start ; status=$?
/var/lib/dpkg/info/libc6.preinst: invoke-rc.d -query ${service} start ; status=$?
This should have been --query.
Surprisingly this update worked on another machine with a similar chroot
without problems, that chroot was updated once more inbetween and
yesterdays update was only from libc6 2.10.1-1 to 2.10.1-6.
If I manually fix the spelling of "--query" in the postinst script and try
to configure libc6, new errors occur:
# dpkg --configure libc6
Setting up libc6 (2.10.1-6) ...
Checking for services that may need to be restarted...
Checking init scripts...
dpkg: error processing libc6 (--configure):
subprocess installed post-installation script returned error exit status 105
Errors were encountered while processing:
libc6
Error 105 seems to be a return value from invoke-rc.d --query,
probably misinterpreted as a failure by set -e.
Andreas
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (600, 'unstable'), (600, 'testing'), (600, 'stable')
Architecture: amd64 (x86_64)
Kernel: Linux 2.6.29-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
Versions of packages libc6 depends on:
ii libc-bin 2.10.1-6 GNU C Library: Binaries
ii libgcc1 1:4.4.1-6 GCC support library
libc6 recommends no packages.
Versions of packages libc6 suggests:
ii debconf [debconf-2.0] 1.5.27 Debian configuration management sy
pn glibc-doc <none> (no description available)
pn locales <none> (no description available)
-- debconf information:
glibc/restart-services:
glibc/disable-screensaver:
glibc/upgrade: true
glibc/restart-failed:
Reply to: