Mantis Bug Tracker

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000023N2R1Low-Levelpublic2010-10-23 20:152010-10-26 05:13
ReporterLerbertransuppe 
Assigned ToTantalus 
PrioritynormalSeverityminorReproducibilityalways
StatusfeedbackResolutionreopened 
PlatformOSOS Version
Product Version2450t 1.0.3 
Target VersionFixed in Version 
Summary0000023: Update of libc6 fails
DescriptionFirst of all a big THANKS for the firmware. It is really appreciated.
My product version is 1.0.4_2450t (which seems to be missing in Mantis).


I tried to install lame (to be able to mp3s).

This requires an update of libc6. This update fails.

My /etc/apt/sources.list is:
--------------------------------------------------------
deb http://mirror.unitedcolo.de/debian [^] lenny main non-free contrib
deb-src http://mirror.unitedcolo.de/debian [^] lenny main non-free contrib
deb http://security.debian.org [^] stable/updates main contrib non-free
deb http://www.debian-multimedia.org [^] lenny main non-free
--------------------------------------------------------

I've added the multimedia-keyring as described on http://www.debian-multimedia.org/ [^]


Running apt-get install lame produces:
--------------------------------------------------------

root@NAS:~> apt-get install lame
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
  lame
0 upgraded, 1 newly installed, 0 to remove and 38 not upgraded.
1 not fully installed or removed.
Need to get 0B/360kB of archives.
After this operation, 741kB of additional disk space will be used.
Setting up libc6 (2.7-18lenny4) ...
BusyBox v1.12.4 (2009-01-02 13:15:21 KST) multi-call binary

Usage: init

Init is the parent of all processes
--------------------------------------------------------
The installation procedure hangs at this stage.


After interrupting the process, the output continues:
--------------------------------------------------------
dpkg: error processing libc6 (--configure):
 subprocess post-installation script killed by signal (Interrupt)
Errors were encountered while processing:
 libc6
E: Sub-process /usr/bin/dpkg returned an error code (1)
--------------------------------------------------------

which is no surprise.

I tried to analyze the postinstall script (/var/lib/dpkg/info/libc6.postinst as far as I know), but didn't get a clue as to what went wrong.

I'd be very grateful for a hint what to do now.

Steps To Reproducesee description
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0000029)
Lerbertransuppe (reporter)
2010-10-23 20:38

Ok, there is this section in the postinstall script, which calls "init u", which in turn hangs:

# Black magic. If we are in a chroot, then /proc/1/exe will not resolve to
# a file (will return EPERM). This keeps us from breaking things in
# debootstrap, and the like.
case "$sysvinitver" in
        $badsysvinitver)
                ;;
        *)
                if [ "$(stat -c %d/%i /)" = "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ]; then
                        # the devicenumber/inode pair of / is the same as that of /sbin/init's
                        # root, so we're *not* in a chroot
                        (init u ; sleep 1)
                fi
                ;;
esac


I'm still dumbfounded - what is the correct way to fix this?
(0000030)
Lerbertransuppe (reporter)
2010-10-24 12:21

I've only now realized that this bit is trying to upgrade sysvinit (which is not included)

Question is: can I safely comment out this bit of code, rerun the upgrade of libc6 and reboot?
If not - how can I "roll back" the botched upgrade attempt of libc6? (I'm a Debian newbie.)
(0000031)
Tantalus (administrator)
2010-10-25 15:36

Thanks for the info about the missing firmware version in the bugtracker.

This is not a "bug" or this is a known issue which won't be fixed in the near future. A simple workaround is to replace the init link by e.g. an empty executable script and fix libc6 by using apt-get. You have to do this for the first time only. After that, replace the script again by the original init link and use apt-get as you like. (this is important. Otherwise your box won't boot again)

E.g. execute the following commands as root:

mv /sbin/init /sbin/init.mv
touch /sbin/init
chmod 755 /sbin/init
dpkg --configure libc6
apt-get update
mv /sbin/init.mv /sbin/init

WARNING: If you execute the first command, you have to execute the last command, before you reboot your NAS-Box!
(0000032)
Tantalus (administrator)
2010-10-25 15:40

Won't be fixed in the near future.

Workaround: Execute the following commands as root:

mv /sbin/init /sbin/init.mv
touch /sbin/init
chmod 755 /sbin/init
dpkg --configure libc6
apt-get update
mv /sbin/init.mv /sbin/init

It's important to execute the last command before you reboot your NAS-Box. Otherwise your NAS-Box won't boot.
(0000033)
Lerbertransuppe (reporter)
2010-10-26 05:13

Hi Tantalus,
thanks for your instructions.
I'm just reopening this issue to add the following comments:

The init of BusyBox has been fixed to accept the "u" command as a no-op.
(See http://lists.busybox.net/pipermail/busybox/2010-October/073690.html [^])
I propose to include this in one of the next firmwares.

Another less risky way in regard to power failure etc is to circumvent the problem is by commenting out the relevant section of the postinstall script (instead of moving init out of the way).

All the best
  Andreas

- Issue History
Date Modified Username Field Change
2010-10-23 20:15 Lerbertransuppe New Issue
2010-10-23 20:38 Lerbertransuppe Note Added: 0000029
2010-10-24 12:21 Lerbertransuppe Note Added: 0000030
2010-10-25 15:36 Tantalus Note Added: 0000031
2010-10-25 15:40 Tantalus Note Added: 0000032
2010-10-25 15:40 Tantalus Status new => closed
2010-10-25 15:40 Tantalus Assigned To => Tantalus
2010-10-25 15:40 Tantalus Resolution open => won't fix
2010-10-26 05:13 Lerbertransuppe Note Added: 0000033
2010-10-26 05:13 Lerbertransuppe Status closed => feedback
2010-10-26 05:13 Lerbertransuppe Resolution won't fix => reopened


Copyright © 2000 - 2012 MantisBT Group
Powered by Mantis Bugtracker