Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-30 Thread Thorsten Glaser
severity 946599 important
thanks

Marco d'Itri dixit:

>Since nobody else managed to reproduce this so far I am inclined to
>demote the bug to "important" to allow the migration to testing.

Agreed, it’s probably a tricky package relationship combination that
it takes to trigger this, and perhaps even nothing easily solved in
the packages.

bye,
//mirabilos
-- 
 den AGP stecker anfeilen, damit er in den slot aufm 440BX board passt…
oder netzteile, an die man auch den monitor angeschlossen hat und die dann für
ein elektrisch aufgeladenes gehäuse gesorgt haben […] für lacher gut auf jeder
LAN party │  damals, als der pizzateig noch auf dem monior "gegangen" ist



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-30 Thread Marco d'Itri
Since nobody else managed to reproduce this so far I am inclined to 
demote the bug to "important" to allow the migration to testing.

-- 
ciao,
Marco


signature.asc
Description: PGP signature


Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-28 Thread Aurelien Jarno
Le 28 décembre 2019 13:31:01 GMT+01:00, John Paul Adrian Glaubitz 
 a écrit :
>Hello!
>
>Just as a heads-up: This problem isn't limited to x32, it also breaks
>on alpha
>and I'm currently flooded with sbuild build failure mails as setting up
>the
>build environment fails [1]:

Nope that's a different issue. The log shows that libcrypt1 is correctly 
installed before libc6.1 is configured.



-- 
Aurelien Jarno  GPG: 4096R/1DDD8C9B
aurel...@aurel32.net http://www.aurel32.net



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-28 Thread John Paul Adrian Glaubitz
Hello!

Just as a heads-up: This problem isn't limited to x32, it also breaks on alpha
and I'm currently flooded with sbuild build failure mails as setting up the
build environment fails [1]:

Setting up libc6.1:alpha (2.29-6) ...
/usr/bin/perl: error while loading shared libraries: libcrypt.so.1.1: cannot 
open shared object file: No such file or directory
dpkg: error processing package libc6.1:alpha (--configure):
 installed libc6.1:alpha package post-installation script subprocess returned 
error exit status 127
Errors were encountered while processing:
 libc6.1:alpha
E: Sub-process /usr/bin/dpkg returned an error code (1)
apt-get failed.

Maybe the Pre-Depends to libgcrypt1 was added for the libc6 package only but
not the libc6.1 package?

Adrian

> [1] 
> https://buildd.debian.org/status/fetch.php?pkg=gcc-10=alpha=10-20191217-1=1577462848=0

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-13 Thread Thorsten Glaser
On Fri, 13 Dec 2019, Marco d'Itri wrote:

> Can you report this from your dpkg.log?
> 
> root@TMP19396:~# egrep '(libc6|libcrypt)' /var/log/dpkg.log 

Comments inline:

- from the dist-upgrade attempt -

2019-12-11 17:03:21 upgrade libc6:x32 2.29-3 2.29-6
2019-12-11 17:03:21 status half-configured libc6:x32 2.29-3
2019-12-11 17:03:21 status unpacked libc6:x32 2.29-3
2019-12-11 17:03:21 status half-configured libc6:i386 2.29-3
2019-12-11 17:03:21 status half-configured libc6:amd64 2.29-3
2019-12-11 17:03:21 status half-installed libc6:x32 2.29-3
2019-12-11 17:03:25 status unpacked libc6:x32 2.29-6
2019-12-11 17:03:35 upgrade libc6:amd64 2.29-3 2.29-6
2019-12-11 17:03:35 status unpacked libc6:amd64 2.29-3
2019-12-11 17:03:35 status half-installed libc6:amd64 2.29-3
2019-12-11 17:03:36 status unpacked libc6:amd64 2.29-3
2019-12-11 17:03:36 status installed libc6:amd64 2.29-3
2019-12-11 17:03:37 upgrade libc6:i386 2.29-3 2.29-6
2019-12-11 17:03:37 status unpacked libc6:i386 2.29-3
2019-12-11 17:03:37 status half-configured libc6:amd64 2.29-3
2019-12-11 17:03:38 status half-installed libc6:i386 2.29-3
2019-12-11 17:03:38 status unpacked libc6:i386 2.29-3
2019-12-11 17:03:38 status installed libc6:amd64 2.29-3
2019-12-11 17:03:38 status installed libc6:i386 2.29-3

- manual recovery -

2019-12-11 17:37:48 install libcrypt1:amd64  1:4.4.10-5
2019-12-11 17:37:48 status half-installed libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:37:49 status unpacked libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:37:49 install libcrypt1:i386  1:4.4.10-5
2019-12-11 17:37:49 status half-installed libcrypt1:i386 1:4.4.10-5
2019-12-11 17:37:49 status unpacked libcrypt1:i386 1:4.4.10-5
2019-12-11 17:37:49 install libcrypt1:x32  1:4.4.10-5
2019-12-11 17:37:49 status half-installed libcrypt1:x32 1:4.4.10-5
2019-12-11 17:37:50 status unpacked libcrypt1:x32 1:4.4.10-5
2019-12-11 17:37:50 configure libcrypt1:amd64 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:37:50 status half-configured libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:37:50 status installed libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:37:50 configure libcrypt1:i386 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:37:50 status half-configured libcrypt1:i386 1:4.4.10-5
2019-12-11 17:37:50 status installed libcrypt1:i386 1:4.4.10-5

- dpkg -i lib{c6,crypt1}_*.deb again, just to be sure -

2019-12-11 17:38:04 upgrade libc6:amd64 2.29-3 2.29-6
2019-12-11 17:38:04 status half-configured libc6:amd64 2.29-3
2019-12-11 17:38:04 status unpacked libc6:amd64 2.29-3
2019-12-11 17:38:04 status half-configured libc6:i386 2.29-3
2019-12-11 17:38:04 status half-installed libc6:amd64 2.29-3
2019-12-11 17:38:06 status unpacked libc6:amd64 2.29-6
2019-12-11 17:38:07 upgrade libc6:i386 2.29-3 2.29-6
2019-12-11 17:38:07 status unpacked libc6:i386 2.29-3
2019-12-11 17:38:07 status half-installed libc6:i386 2.29-3
2019-12-11 17:38:09 status unpacked libc6:i386 2.29-6
2019-12-11 17:38:09 upgrade libc6:x32 2.29-6 2.29-6
2019-12-11 17:38:09 status half-installed libc6:x32 2.29-6
2019-12-11 17:38:11 status unpacked libc6:x32 2.29-6
2019-12-11 17:38:11 configure libc6:amd64 2.29-6 2.29-6
2019-12-11 17:38:11 status half-configured libc6:amd64 2.29-6
2019-12-11 17:38:13 status installed libc6:amd64 2.29-6
2019-12-11 17:38:13 configure libc6:i386 2.29-6 2.29-6
2019-12-11 17:38:13 status half-configured libc6:i386 2.29-6
2019-12-11 17:38:15 status installed libc6:i386 2.29-6
2019-12-11 17:38:15 configure libcrypt1:x32 1:4.4.10-5 
2019-12-11 17:38:15 status unpacked libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:15 status half-configured libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:15 status installed libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:16 configure libc6:x32 2.29-6 2.29-6
2019-12-11 17:38:16 status half-configured libc6:x32 2.29-6
2019-12-11 17:38:18 status installed libc6:x32 2.29-6
2019-12-11 17:38:23 upgrade libcrypt1:amd64 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:38:23 status half-configured libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:38:23 status unpacked libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:38:23 status half-installed libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:38:23 status unpacked libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:38:24 upgrade libcrypt1:i386 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:38:24 status half-configured libcrypt1:i386 1:4.4.10-5
2019-12-11 17:38:24 status unpacked libcrypt1:i386 1:4.4.10-5
2019-12-11 17:38:24 status half-installed libcrypt1:i386 1:4.4.10-5
2019-12-11 17:38:24 status unpacked libcrypt1:i386 1:4.4.10-5
2019-12-11 17:38:25 upgrade libcrypt1:x32 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:38:25 status half-configured libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:25 status unpacked libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:25 status half-installed libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:25 status unpacked libcrypt1:x32 1:4.4.10-5
2019-12-11 17:38:25 configure libcrypt1:amd64 1:4.4.10-5 1:4.4.10-5
2019-12-11 17:38:25 status half-configured libcrypt1:amd64 1:4.4.10-5
2019-12-11 17:38:25 status installed libcrypt1:amd64 1:4.4.10-5
2019-12-11 

Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-13 Thread Marco d'Itri
On Dec 12, Thorsten Glaser  wrote:

> I did a dist-upgrade, and apt uses a different resolver than apt-get,
> but… perhaps the apt maintainers can help trying to figure this out?
I have tried "apt-get --purge dist-upgrade" too and it still does not 
fail on my system.

Can you report this from your dpkg.log?

root@TMP19396:~# egrep '(libc6|libcrypt)' /var/log/dpkg.log 
2019-12-12 18:28:46 install libc6:amd64  2.28-10
2019-12-12 18:28:46 status half-installed libc6:amd64 2.28-10
2019-12-12 18:28:47 status unpacked libc6:amd64 2.28-10
2019-12-12 18:28:47 configure libc6:amd64 2.28-10 2.28-10
2019-12-12 18:28:47 status half-configured libc6:amd64 2.28-10
2019-12-12 18:28:48 status installed libc6:amd64 2.28-10
2019-12-12 18:28:57 upgrade libc6:amd64 2.28-10 2.28-10
2019-12-12 18:28:57 status half-configured libc6:amd64 2.28-10
2019-12-12 18:28:57 status unpacked libc6:amd64 2.28-10
2019-12-12 18:28:57 status half-installed libc6:amd64 2.28-10
2019-12-12 18:28:58 status unpacked libc6:amd64 2.28-10
2019-12-12 18:29:11 configure libc6:amd64 2.28-10 
2019-12-12 18:29:11 status unpacked libc6:amd64 2.28-10
2019-12-12 18:29:11 status half-configured libc6:amd64 2.28-10
2019-12-12 18:29:11 status installed libc6:amd64 2.28-10
2019-12-12 18:29:30 install libc6-dev:amd64  2.28-10
2019-12-12 18:29:30 status half-installed libc6-dev:amd64 2.28-10
2019-12-12 18:29:30 status unpacked libc6-dev:amd64 2.28-10
2019-12-12 18:29:37 configure libc6-dev:amd64 2.28-10 
2019-12-12 18:29:37 status unpacked libc6-dev:amd64 2.28-10
2019-12-12 18:29:37 status half-configured libc6-dev:amd64 2.28-10
2019-12-12 18:29:37 status installed libc6-dev:amd64 2.28-10
2019-12-12 19:31:43 install libc6:i386  2.28-10
2019-12-12 19:31:43 status half-installed libc6:i386 2.28-10
2019-12-12 19:31:44 status unpacked libc6:i386 2.28-10
2019-12-12 19:31:44 configure libc6:i386 2.28-10 
2019-12-12 19:31:44 status unpacked libc6:i386 2.28-10
2019-12-12 19:31:44 status half-configured libc6:i386 2.28-10
2019-12-12 19:31:46 status installed libc6:i386 2.28-10
2019-12-13 16:52:18 upgrade libc6:i386 2.28-10 2.29-6
2019-12-13 16:52:18 status half-configured libc6:i386 2.28-10
2019-12-13 16:52:18 status unpacked libc6:i386 2.28-10
2019-12-13 16:52:18 status half-configured libc6:amd64 2.28-10
2019-12-13 16:52:18 status half-installed libc6:i386 2.28-10
2019-12-13 16:52:19 status unpacked libc6:i386 2.29-6
2019-12-13 16:52:19 upgrade libc6:amd64 2.28-10 2.29-6
2019-12-13 16:52:19 status unpacked libc6:amd64 2.28-10
2019-12-13 16:52:19 status half-installed libc6:amd64 2.28-10
2019-12-13 16:52:20 status unpacked libc6:amd64 2.29-6
2019-12-13 16:52:20 install libcrypt1:amd64  1:4.4.10-5
2019-12-13 16:52:20 status half-installed libcrypt1:amd64 1:4.4.10-5
2019-12-13 16:52:20 status unpacked libcrypt1:amd64 1:4.4.10-5
2019-12-13 16:52:20 install libcrypt1:i386  1:4.4.10-5
2019-12-13 16:52:20 status half-installed libcrypt1:i386 1:4.4.10-5
2019-12-13 16:52:20 status unpacked libcrypt1:i386 1:4.4.10-5
2019-12-13 16:52:20 configure libcrypt1:amd64 1:4.4.10-5 
2019-12-13 16:52:20 status unpacked libcrypt1:amd64 1:4.4.10-5
2019-12-13 16:52:20 status half-configured libcrypt1:amd64 1:4.4.10-5
2019-12-13 16:52:20 status installed libcrypt1:amd64 1:4.4.10-5
2019-12-13 16:52:20 configure libc6:amd64 2.29-6 
2019-12-13 16:52:20 status unpacked libc6:amd64 2.29-6
2019-12-13 16:52:20 status half-configured libc6:amd64 2.29-6
2019-12-13 16:52:21 status installed libc6:amd64 2.29-6
2019-12-13 16:52:21 configure libcrypt1:i386 1:4.4.10-5 
2019-12-13 16:52:21 status unpacked libcrypt1:i386 1:4.4.10-5
2019-12-13 16:52:21 status half-configured libcrypt1:i386 1:4.4.10-5
2019-12-13 16:52:21 status installed libcrypt1:i386 1:4.4.10-5
2019-12-13 16:52:21 configure libc6:i386 2.29-6 
2019-12-13 16:52:21 status unpacked libc6:i386 2.29-6
2019-12-13 16:52:21 status half-configured libc6:i386 2.29-6
2019-12-13 16:52:23 status installed libc6:i386 2.29-6
2019-12-13 16:52:23 upgrade libc6-dev:amd64 2.28-10 2.29-6
2019-12-13 16:52:23 status half-configured libc6-dev:amd64 2.28-10
2019-12-13 16:52:23 status unpacked libc6-dev:amd64 2.28-10
2019-12-13 16:52:23 status half-installed libc6-dev:amd64 2.28-10
2019-12-13 16:52:23 status unpacked libc6-dev:amd64 2.29-6
2019-12-13 16:52:23 install libcrypt1-dev:amd64  1:4.4.10-5
2019-12-13 16:52:23 status half-installed libcrypt1-dev:amd64 1:4.4.10-5
2019-12-13 16:52:23 status unpacked libcrypt1-dev:amd64 1:4.4.10-5
2019-12-13 15:52:47 configure libcrypt1-dev:amd64 1:4.4.10-5 
2019-12-13 15:52:47 status unpacked libcrypt1-dev:amd64 1:4.4.10-5
2019-12-13 15:52:47 status half-configured libcrypt1-dev:amd64 1:4.4.10-5
2019-12-13 15:52:47 status installed libcrypt1-dev:amd64 1:4.4.10-5
2019-12-13 15:52:48 configure libc6-dev:amd64 2.29-6 
2019-12-13 15:52:48 status unpacked libc6-dev:amd64 2.29-6
2019-12-13 15:52:48 status half-configured libc6-dev:amd64 2.29-6
2019-12-13 15:52:48 status installed libc6-dev:amd64 2.29-6
root@TMP19396:~#

-- 
ciao,
Marco

Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-12 Thread Marco d'Itri
On Dec 11, Aurelien Jarno  wrote:

> On 2019-12-11 17:54, Marco d'Itri wrote:
> > On Dec 11, Thorsten Glaser  wrote:
> > 
> > > Thankfully, I had a root session in a chroot open and used
> > > the program, statically linked, from http://koltsoff.com/pub/getroot/
> > > to recover access outside the chroot, by using dpkg -i --force-all
> > > first on libc6_*.deb, then libcrypt1_*.deb. Afterwards, normal recovery
> > > mechanisms apply.
> > I suspect that ldconfig would have been enough to fix this.
> > 
> > Theory A: maybe after all we really need some Pre-Depends in libc6?
> 
> A Depends should be enough, we don't need the package fully configured,
> just unpacked. In the machines that I have upgraded, libcrypt1 is
> unpacked before libc6, so it works.
> 
> I am not sure we can use a Pre-Depends given we have a dependency loop,
> libcrypt1 depends on libc6 and libc6 depends on libcrypt1. In addition
> we also have a Breaks + Replaces...
> 
> > Theory B: did we miss something related to x32?
> 
> On 2019-12-11 17:57, Thorsten Glaser wrote:
> > Given it worked in the amd64-only chroot and on another machine,
> > this most likely only fails if one has more than one architecture
> > enabled in Multi-Arch, perhaps also needs the -dev packages installed
> > to trigger.

> I thing that's the issue. Multi-Arch forces some order for all the
> versions of libc6, and also all the versions of libcrypt1.

So far I have not been able to reproduce this. My attempt:

debootstrap --arch=amd64 --variant=buildd buster mabuster 
http://ftp.it.debian.org/debian/
chroot mabuster/
dpkg --add-architecture i386
apt update
apt install whois:i386
perl -i -pe s/buster/unstable/ /etc/apt/sources.list
apt update
apt install libc6

Filtered output from apt:

Preparing to unpack .../archives/libc6_2.29-6_i386.deb ...
De-configuring libc6:amd64 (2.28-10) ...
Unpacking libc6:i386 (2.29-6) over (2.28-10) ...
Preparing to unpack .../libc6_2.29-6_amd64.deb ...
Unpacking libc6:amd64 (2.29-6) over (2.28-10) ...
Setting up libc6:amd64 (2.29-6) ...
Setting up libc6:i386 (2.29-6) ...
Preparing to unpack .../libc6-dev_2.29-6_amd64.deb ...
Unpacking libc6-dev:amd64 (2.29-6) over (2.28-10) ...
Setting up libc6-dev:amd64 (2.29-6) ...

-- 
ciao,
Marco


signature.asc
Description: PGP signature


Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Thorsten Glaser
Aurelien Jarno dixit:

>I am not sure we can use a Pre-Depends given we have a dependency loop,

Ah, dependency loops cause unpredictable behaviour…

>I thing that's the issue. Multi-Arch forces some order for all the
>versions of libc6, and also all the versions of libcrypt1.

… plus that.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Aurelien Jarno
On 2019-12-11 17:54, Marco d'Itri wrote:
> On Dec 11, Thorsten Glaser  wrote:
> 
> > Thankfully, I had a root session in a chroot open and used
> > the program, statically linked, from http://koltsoff.com/pub/getroot/
> > to recover access outside the chroot, by using dpkg -i --force-all
> > first on libc6_*.deb, then libcrypt1_*.deb. Afterwards, normal recovery
> > mechanisms apply.
> I suspect that ldconfig would have been enough to fix this.
> 
> Theory A: maybe after all we really need some Pre-Depends in libc6?

A Depends should be enough, we don't need the package fully configured,
just unpacked. In the machines that I have upgraded, libcrypt1 is
unpacked before libc6, so it works.

I am not sure we can use a Pre-Depends given we have a dependency loop,
libcrypt1 depends on libc6 and libc6 depends on libcrypt1. In addition
we also have a Breaks + Replaces...

> Theory B: did we miss something related to x32?

On 2019-12-11 17:57, Thorsten Glaser wrote:
> Given it worked in the amd64-only chroot and on another machine,
> this most likely only fails if one has more than one architecture
> enabled in Multi-Arch, perhaps also needs the -dev packages installed
> to trigger.

I thing that's the issue. Multi-Arch forces some order for all the
versions of libc6, and also all the versions of libcrypt1.

-- 
Aurelien Jarno  GPG: 4096R/1DDD8C9B
aurel...@aurel32.net http://www.aurel32.net


signature.asc
Description: PGP signature


Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Thorsten Glaser
Marco d'Itri dixit:

>Theory A: maybe after all we really need some Pre-Depends in libc6?

Pre-Depends + Replaces, maybe? (Though Replaces is already there.)

>Theory B: did we miss something related to x32?

Unsure if it’s about x32 or about Multi-Arch or the missing Pre-Depends.

>Is this an x32 perl?

>> /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot 
>> open shared object file: No such file or directory

Yes. But /usr/bin/perl is linked against libcrypt.so.1 on amd64 as well.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Thorsten Glaser
On Wed, 11 Dec 2019, Thorsten Glaser wrote:

> Justification: breaks the whole system
> 
> I’ve did a “sudo apt-get --purge dist-upgrade” and ended with,

Given it worked in the amd64-only chroot and on another machine,
this most likely only fails if one has more than one architecture
enabled in Multi-Arch, perhaps also needs the -dev packages installed
to trigger.

bye,
//mirabilos
-- 
tarent solutions GmbH
Rochusstraße 2-4, D-53123 Bonn • http://www.tarent.de/
Tel: +49 228 54881-393 • Fax: +49 228 54881-235
HRB 5168 (AG Bonn) • USt-ID (VAT): DE122264941
Geschäftsführer: Dr. Stefan Barth, Kai Ebenrett, Boris Esser, Alexander Steeg

**

Mit der tarent Academy bieten wir auch Trainings und Schulungen in den
Bereichen Softwareentwicklung, Agiles Arbeiten und Zukunftstechnologien an.

Besuchen Sie uns auf www.tarent.de/academy. Wir freuen uns auf Ihren Kontakt.

**



Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Marco d'Itri
On Dec 11, Thorsten Glaser  wrote:

> Thankfully, I had a root session in a chroot open and used
> the program, statically linked, from http://koltsoff.com/pub/getroot/
> to recover access outside the chroot, by using dpkg -i --force-all
> first on libc6_*.deb, then libcrypt1_*.deb. Afterwards, normal recovery
> mechanisms apply.
I suspect that ldconfig would have been enough to fix this.

Theory A: maybe after all we really need some Pre-Depends in libc6?

Theory B: did we miss something related to x32?

Is this an x32 perl?

> Preparing to unpack .../0-libc6_2.29-6_x32.deb ...
> De-configuring libc6:i386 (2.29-3) ...
> De-configuring libc6:amd64 (2.29-3) ...
> Unpacking libc6:x32 (2.29-6) over (2.29-3) ...
> Preparing to unpack .../1-libc6_2.29-6_amd64.deb ...
> /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot 
> open shared object file: No such file or directory
> dpkg: error processing archive 
> /tmp/apt-dpkg-install-vKsDE7/1-libc6_2.29-6_amd64.deb (--unpack):
>  new libc6:amd64 package pre-installation script subprocess returned error 
> exit status 127

-- 
ciao,
Marco


signature.asc
Description: PGP signature


Bug#946599: libcrypt1: failure to switch from libc6 to libcrypt1 hoses the whole system

2019-12-11 Thread Thorsten Glaser
Package: libcrypt1
Version: 1:4.4.10-5
Severity: critical
Justification: breaks the whole system

I’ve did a “sudo apt-get --purge dist-upgrade” and ended with,
see screenshot below.

Thankfully, I had a root session in a chroot open and used
the program, statically linked, from http://koltsoff.com/pub/getroot/
to recover access outside the chroot, by using dpkg -i --force-all
first on libc6_*.deb, then libcrypt1_*.deb. Afterwards, normal recovery
mechanisms apply.

Log:

Calculating upgrade... Done
The following packages were automatically installed and are no longer required:
  fonts-noto-hinted fonts-noto-ui-core liblouis19 libxml-simple-perl
Use 'sudo apt autoremove' to remove them.
The following packages will be REMOVED:
  libpcre2-posix0*
The following NEW packages will be installed:
  fonts-cantarell libcrypt1:i386 libcrypt1:amd64 libcrypt1 libcrypt1-dev:i386 
libcrypt1-dev liblouis20
  libpcre2-posix2 libxstring-perl linux-image-5.3.0-3-amd64:amd64
The following packages have been kept back:
  libegl1 libgl1 libgles2 libglvnd0 libglx0 librsvg2-2:i386 libselinux1:i386 
libv4l-0:i386 libv4lconvert0:i386
  libvirt-clients libvirt-daemon libvirt-daemon-system libvirt0 python3-libvirt 
tomcat9
The following packages will be upgraded:
  bochsbios debhelper debianutils drkonqi dwz fig2dev fonts-comfortaa git 
git-doc git-man gitk gitweb glibc-doc
  gstreamer1.0-alsa:i386 gstreamer1.0-alsa gstreamer1.0-libav:i386 
gstreamer1.0-plugins-bad:i386
  gstreamer1.0-plugins-base gstreamer1.0-plugins-base:i386 
gstreamer1.0-plugins-good:i386
  gstreamer1.0-plugins-ugly:i386 intel-microcode:amd64 iptables kde-spectacle 
kinit kio kwalletmanager
  libbrlapi0.7 libc-bin libc-dev-bin libc-l10n libc6:i386 libc6 libc6:amd64 
libc6-dbg libc6-dev:i386 libc6-dev
  libdbus-glib-1-2:i386 libdbus-glib-1-2 libdebhelper-perl 
libgstreamer-plugins-bad1.0-0:i386
  libgstreamer-plugins-base1.0-0:i386 libgstreamer-plugins-base1.0-0 
libgstreamer1.0-0:i386 libgstreamer1.0-0
  libhttp-cookies-perl libio-pty-perl libip4tc2 libip6tc2 libiptc0 
libjs-bootstrap4 libjs-popper.js
  libjs-sphinxdoc libkaccounts1 libkf5activities5 libkf5bookmarks5 
libkf5completion5 libkf5configwidgets5
  libkf5crash5 libkf5declarative5 libkf5globalaccel-bin libkf5globalaccel5 
libkf5globalaccelprivate5
  libkf5iconthemes5 libkf5jobwidgets5 libkf5kcmutils5 libkf5khtml5 
libkf5kiocore5 libkf5kiontlm5
  libkf5kiowidgets5 libkf5kipi32.0.0 libkf5kirigami2-5 libkf5newstuff5 
libkf5newstuffcore5 libkf5notifications5
  libkf5parts5 libkf5purpose-bin libkf5purpose5 libkf5quickaddons5 
libkf5textwidgets5 libkf5wallet-bin
  libkf5wallet5 libkwalletbackend5-5 liblinux-epoll-perl liblist-someutils-perl 
liblouis-bin liblouis-data
  liblouisutdml-bin liblouisutdml-data liblouisutdml9 libmime-lite-perl 
libmoox-late-perl libmysofa0:i386
  libmysofa0 libokular5core8 libpcre2-16-0 libpcre2-32-0 libpcre2-8-0:i386 
libpcre2-8-0 libpcre2-dev
  libqmobipocket2 libsepol1 libsepol1-dev libserd-0-0:i386 libserd-0-0 
libslirp0 libsnappy1v5:i386 libsnappy1v5
  libsord-0-0:i386 libsord-0-0 libspecio-perl libsratom-0-0:i386 libsratom-0-0 
libtype-tiny-perl libvncclient1
  libvncserver1 libwireshark-data libwmf0.2-7 libx265-179:i386 libx265-179 
libxtables12 libz3-4:i386
  linux-image-amd64:amd64 linux-libc-dev linux-libc-dev:i386 locales 
locales-all netbase node-glob okular
  python3-requests python3-urllib3 qml-module-org-kde-kcm 
qml-module-org-kde-kirigami2
  qml-module-org-kde-kquickcontrolsaddons systemsettings tcpdump texlive 
texlive-base texlive-bibtex-extra
  texlive-extra-utils texlive-font-utils texlive-fonts-extra 
texlive-fonts-extra-doc texlive-fonts-extra-links
  texlive-fonts-recommended texlive-fonts-recommended-doc texlive-formats-extra 
texlive-full texlive-games
  texlive-humanities texlive-humanities-doc texlive-lang-arabic 
texlive-lang-chinese texlive-lang-cjk
  texlive-lang-cyrillic texlive-lang-czechslovak texlive-lang-english 
texlive-lang-european texlive-lang-french
  texlive-lang-german texlive-lang-greek texlive-lang-italian 
texlive-lang-korean texlive-lang-other
  texlive-lang-polish texlive-lang-portuguese texlive-lang-spanish 
texlive-latex-base texlive-latex-base-doc
  texlive-latex-extra texlive-latex-extra-doc texlive-latex-recommended 
texlive-latex-recommended-doc
  texlive-luatex texlive-metapost texlive-metapost-doc texlive-music 
texlive-pictures texlive-pictures-doc
  texlive-plain-generic texlive-pstricks texlive-pstricks-doc 
texlive-publishers texlive-publishers-doc
  texlive-science texlive-science-doc texlive-xetex
188 upgraded, 10 newly installed, 1 to remove and 15 not upgraded.
Need to get 2756 MB of archives.
After this operation, 306 MB of additional disk space will be used.
Do you want to continue? [Y/n]
Get:1 http://deb.debian.org/debian-ports unstable/main x32 debianutils x32 
4.9.1 [100 kB]
Get:2 http://deb.debian.org/debian sid/main amd64 libcrypt1 amd64 1:4.4.10-5 
[84.8 kB]
[…]
Get:198 http://deb.debian.org/debian sid/main