Bug#974552: upgrade-reports: libc6/libcrypt split breaks perl during buster->bullseye upgrade

Sven Joachim svenjoac at gmx.de
Fri Nov 13 19:48:19 GMT 2020


On 2020-11-13 18:23 +0100, Niels Thykier wrote:

> Control: reassign -1 perl-base
> Control: affects -1 upgrade-reports
> Control: severity -1 grave
>
> Hi Perl team,
>
> I have reassigned this bug to perl because perl-base being essential
> must remain functional during an upgrade and AFAICT perl-base fails in
> this case here.
>
> If it is a direct linkage, then you might be needing a Pre-Depends.  If
> it is an indirect linkage then I am not sure how to fix it. :-/

I don't think perl-base is doing anything wrong here, it already uses
Pre-Depends.  AFAICS the problem is that libcrypt.so.1 can temporarily
go missing if libc6 2.31-4 is unpacked before libcrypt1, breaking the
assumption that binaries from essential packages are always usable.

I don't have a good idea how to fix that, though. :-(

Cheers,
       Sven

> Alois Wohlschlager:
>> Package: upgrade-reports
>> Severity: critical
>> Justification: breaks the whole system
>> X-Debbugs-Cc: alois1 at gmx-topmail.de
>> 
>> Dear Maintainer,
>> 
>> *** Reporter, please consider answering these questions, where appropriate ***
>> 
>>    * What led up to the situation?
>> 
>>    Do an upgrade from buster to bullseye.
>> 
>> 
>>    * What exactly did you do (or not do) that was effective (or
>>      ineffective)?
>> 
>>    1. adjust sources.list
>>    2. apt upgrade
>>    3. apt dist-upgrade
>> 
>>    * What was the outcome of this action?
>> 
>>    apt dist-upgrade goes horribly wrong. Excerpt from the log:
>> 
>> ---
>> Entpacken von libc6:amd64 (2.31-4) über (2.28-10) ...
>> Vormals nicht ausgewähltes Paket libc6:i386 wird gewählt.
>> Vorbereitung zum Entpacken von .../4-libc6_2.31-4_i386.deb ...
>> Entpacken von libc6:i386 (2.31-4) ...
>> Vormals nicht ausgewähltes Paket libgcc-s1:i386 wird gewählt.
>> Vorbereitung zum Entpacken von .../5-libgcc-s1_10.2.0-16_i386.deb ...
>> Entpacken von libgcc-s1:i386 (10.2.0-16) ...
>> Vormals nicht ausgewähltes Paket gcc-10-base:i386 wird gewählt.
>> Vorbereitung zum Entpacken von .../6-gcc-10-base_10.2.0-16_i386.deb ...
>> Entpacken von gcc-10-base:i386 (10.2.0-16) ...
>> /usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open
>> shared object file: No such file or directory
>> dpkg: Fehler: Fehler beim Ausführen des Hooks »if [ -x /usr/share/debian-
>> security-support/check-support-status.hook ] ; then /usr/sh
>> are/debian-security-support/check-support-status.hook ; fi«, Exitkode 32512
>> ---
>> 
>>    At this point, perl is still the version from buster, and libcrypt1 is not
>> yet installed. The missing libcrypt.so.1 also completely breaks PAM, so login
>> and sudo don't work any more.
>>    To recover from this outcome, I had to boot with "init=/bin/sh", install the
>> libcrypt1 package with dpkg and run "apt -f install" twice. This rendered the
>> system operational again and a further "apt dist-upgrade" ran through smoothly.
>> 
>>    * What outcome did you expect instead?
>> 
>>    libcrypt1 is installed before libcrypt.so.1 is required again, so the dist-
>> upgrade can proceed normally.
>> 
>> [...]




More information about the Perl-maintainers mailing list