libc6 升级后 `sudo: 帐户验证失败,您的帐户被锁定了吗?` - 在关闭并从 Live CD 修复之前我可以做什么

libc6 升级后 `sudo: 帐户验证失败,您的帐户被锁定了吗?` - 在关闭并从 Live CD 修复之前我可以做什么

我尝试安装一些软件包(apache mariaDB),但我的出现了问题 sudo apt install apache2 mariadb-server apt-transport-https

最后出现了一个错误

Checking init scripts...
Unpacking libc6:armhf (2.32-4+rpi1) over (2.29-2+rpi1) ...
Setting up libc6:armhf (2.32-4+rpi1) ...
/usr/bin/perl: error while loading shared libraries: libcrypt.so.1: cannot open shared object file: No such file or directory
dpkg: error processing package libc6:armhf (--configure):
 installed libc6:armhf package post-installation script subprocess returned error exit status 127
Errors were encountered while processing:
 libc6:armhf
Error: Timeout was reached
E: Sub-process /usr/bin/dpkg returned an error code (1)
You have new mail in /var/mail/pi

这似乎是一个已知错误。当时(2021 年 3 月)人们正在更新到 4.4.10 左右的 gblic2.30 和 libcrypt,我正在更新到 libc62.32 和 libcrypt1:4.4.27,所以我不知道为什么该错误仍然存​​在(!)

我的理解来自于漏洞是我需要在需要该库的地方放置一个链接或文件,例如

ln -s /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 /lib/libcrypto.so.1

唯一的问题是我需要成为 root 才能做到这一点,或者sudo现在su是不可能的,甚至从 ssh 登录也是不可能的!

我读到,这里唯一的希望是创建文件或符号链接,或者从 liveCD/USB 启动机器,或者放置包含根文件系统的 SD 卡并手动编辑该部分。

我的问题是:

  • 在我关闭树莓派电源并取出 SD 卡手动创建链接之前,虽然我仍然可以使用我登录的终端,但我可以尝试进行任何修复吗?

我强调我不能 sudo ...

答案1

如果您无法成为 ,则无法创建链接root

我认为你必须使用Linux系统,你可以在其中工作root,插入SD卡并创建链接。

请注意,未修改的ln -s ...命令将在正在运行的系统的目录中创建链接,而不是在 SD 卡上。你必须使用类似的东西

ln -s /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 /path/to/the/sd-card/lib/libcrypto.so.1

或者

cd /path/to/the/sd-card/lib && ln -s /usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1 libcrypto.so.1

/usr/lib/arm-linux-gnueabihf/libcrypto.so.1.1检查SD卡上是否存在共享库。否则,您可能必须找到正确的名称和/或位置。


笔记:该答案仅涵盖如果您没有 root 访问权限如何创建链接的问题。我不知道这是否能解决所有问题。创建链接并启动 Raspberry Pi 后,您可能需要修复损坏的软件包或不完整的软件包安装。

相关内容