パスワードを入力する前に、すべてのユーザーにDebian「ログインエラー」が発生する

パスワードを入力する前に、すべてのユーザーにDebian「ログインエラー」が発生する

現在システムが機能していないようですが、回復方法がわかりません。

ここで説明されている標準的な方法を使用してBusterからBookwormにアップデートしています。https://wiki.debian.org/DebianUpgrade

アップグレードを開始するとエラーが発生し、/usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directoryアップグレードが停止します。迅速にソリューションを検索して発見しましょう。この回答解決しましたので、実行を開始してみてください。

実行しようとしたときにsudo cp -av lib/x86_64-linux-gnu/* /lib/x86_64-linux-gnu/奇妙なsudoエラーが発生しました。同様のエラーが発生しましたが、cannot escalate, is your account locked?正確なエラーは不明です。すぐに再起動すると問題が解決すると思いましたが、問題はここから始まりました。

コンピュータが起動した後、SSH経由でコンピュータに接続しようとしましたが、接続が拒否されました。私はほとんどの時間を頭なしで走っているので、それは明らかに悪い兆候です。私はそれを通常の場所から取り出し、モニターに接続して何が起こっているのかを確認しました。

デバイスは正常に起動しますが、ログインプロンプトでユーザー名を入力するたびにパスワードの入力を求めるLogin incorrect直前にメッセージが表示されます。私はそれを試してrootそれを得ましたLogin incorrect

Debian Recoveryを起動しようとしましたが、同じエラーが発生しました。何をしてもシステムにログインできません。

ログインプロンプト前のログスクリーンショット。

起動ログ

USBドライブから回復モードで起動しようとしましたが、システムにメッセージが表示されることがありました。これを試みると、journalctl「ログファイルが見つかりません」というメッセージが表示されます。

私が見つけることができる唯一の注目すべきことです/var/log/auth.log

PAM unable to dlopen(pam_unix.so): /lib/security/pam_unix.so: cannot open shared object file: No such file or directory
PAM adding faulty module: pam_unix.so
FAILED LOGIN (1) on `/dev/tty1` for `root`, Authentication Failure

この時点でシステムを復元する方法を知っている人はいますか?私は何をすべきかわからない。私が見ることができるのはUSB回復モードのプロンプトだけなので、私ができることは比較的限られています。

ありがとう

答え1

この状態から出て、私はこうしました。

  • Debian Live インストーラから起動し、リカバリモードに入ります。
  • 回復時に既存のインストールをロードする
  • 関連するすべてのドライバがインストールされましたが、私の場合はインストールされ/varてい/usrないため、いくつかの問題が発生しました。
  • 以下の情報はここにあります。

走る

cd /tmp  
apt download libcrypt1  
dpkg-deb -x libcrypt1_1%3a4.4.33-2_amd64.deb  .  
cp -av lib/x86_64-linux-gnu/* /lib/x86_64-linux-gnu/
apt --fix-broken install
  • 再起動してください。 PAMの破損状態が解決されたので、ログインが機能します。
  • 終わるsudo apt full-upgrade

これにより、システムが完全に使用可能で動作し、アップグレードされた状態に戻りました。アップグレード中にlibcryptが破損しているように見えるため、アップグレード中に競合が発生し、libcryptが破損してログインが中断されます。

また、何らかの理由でカーネルがアップグレードされないという問題がありましたが、aufs-dkms問題を削除した後は正常にアップグレードされました。私はまだv3.16を使用していますが、この問題がしばらくあったようです!

答え2

したがって、libcrypto.soシステムは残りのシステムと連携しません。アップグレードが中断されたのではないでしょうか?たぶん手動でパッチを適用して問題を解決する必要があるかもしれません。推測するのは難しいです。

ほとんどのシステムツールにはとにかくlibcrypt(パスワードハッシュルーチンなどが含まれています)が含まれているため、認証を許可するすべての実行可能ファイルは現在機能していません。

とにかく解決策は、通常Debian Live USBスティックを起動し、付属のパッケージをlibcrypto.so正しく機能しないメインシステムに再インストールすることです。これには、元のシステムのルート(たとえば/target)をマウントしてから、次の操作を実行することが含まれます。

apt-get download libpam-modules libcrypt1
sudo dpkg -i --root=/target libpam-modules*.deb librypt1*.deb

関連情報