[SOLVED] debconf bricked -- undefined variable $ARGV and similar issues
On Sun, 15 Jun 2014 12:40:38 -0400 (EDT), Stephen Powell wrote:
> I tried an "apt-get dist-upgrade" of my jessie system yesterday, with bad
> results. It seems that debconf is bricked. Currently, there are three packages
> that are unpacked but not configured: tzdata, locales, and debconf. (There were
> originally two: tzdata and locales. I tried reinstalling debconf in an attempt
> to fix the problem, but that only bricked debconf too. So now there are three.
> Here's what I get when I attempt to configure debconf. I get similar errors if
> I attempt to configure either of the other two packages.
> root@smp6:~# dpkg --configure debconf
> Setting up debconf (1.5.53) ...
> Use of uninitialized value $ARGV in string eq at /usr/share/debconf/frontend line 17.
> Use of uninitialized value $ARGV in pattern match (m//) at /usr/share/debconf/frontend line 24.
> Use of uninitialized value $ARGV in concatenation (.) or string at /usr/share/debconf/frontend line 60.
> Use of uninitialized value $ARGV in pattern match (m//) at /usr/share/debconf/frontend line 61.
> Use of uninitialized value $ARGV in pattern match (m//) at /usr/share/debconf/frontend line 62.
> Use of uninitialized value $ARGV in pattern match (m//) at /usr/share/debconf/frontend line 72.
> Use of uninitialized value $r in <HANDLE> at /usr/share/perl5/Debconf/ConfModule.pm line 72.
> readline() on unopened filehandle at /usr/share/perl5/Debconf/ConfModule.pm line 72.
> dpkg: error processing package debconf (--configure):
> subprocess installed post-installation script was killed by signal (Segmentation fault)
> Errors were encountered while processing:
> How did this happen, what can I do to fix it, and how do I make sure that it doesn't
> happen again? These errors are preventing the rest of the upgrade from going through.
> I can't go forward, and I can't back out. Fortunately, the system still runs (and
The error messages above show up on the user's console
(a remote ssh session). An additional symptom is this message on the
system console (the SCLP line-mode console for Linux running in an LPAR,
the 3215 virtual console for Linux running in a virtual machine under z/VM):
User process fault: interruption code 0x4003B in libperl.so.5.18.2[3fffcfff000+1d0000]
failing address: 0
I checked, and libperl.so.5.18.2 belongs to package perl-base on the s390x
architecture. The package version currently installed was 5.18.2-4+b1.
According to Debian's web site, s390x is the *only* architecture running
this version in testing. All others are at 5.18.2-4. I found version
5.20.0-1 in experimental, and installed it. Problem solved. If you have
this problem, you can't fix it the usual way (apt-get install), because
apt-get will first run "dpkg --configure -a" if there are any unconfigured
packages on the system, which there are, and it will fail. This causes
apt-get install to fail. You have to download the packages somehow
(apt-get download, wget, ftp, etc.) then install them manually with dpkg.
You will need three packages, probably: perl, perl-base, and perl-modules.
Install perl-base first, then perl-modules (you will probably need to use
the --force-depends option on perl-modules), then finally perl.
Don't install version 5.18.2-4+b1 of perl* on your system!
.''`. Stephen Powell
: :' :