我如何修复损坏的 apt/perl 库?

我如何修复损坏的 apt/perl 库?

我已经将 Raspberry Pi 设置为 Web 服务器,5 分钟前一切都运行良好,但我似乎搞乱了 man-db、apt 或一些 perl 库。由于某些加载错误,apt-get 似乎无法正确更新和安装应用程序:

harry@raspberrypi ~ $ sudo apt-get 升级

...

以下软件包将会升级:

pypy-upstream raspi-config 暂存

...

耗时 37 秒,获取 40.4 MB (1088 kB/s)

/usr/bin/perl:加载共享库时出错:/usr/lib/libperl.so.5.14:e_ident 中的 n onzero 填充

...

设置 man-db (2.6.2-1) ...

/usr/bin/perl:加载共享库时出错:/usr/lib/libperl.so.5.14:e_ident 中的 n onzero 填充

dpkg: 错误处理 man-db (--configure):

...

处理时遇到错误:man-db

子进程安装后安装脚本返回错误退出状态 127

E: 子进程 /usr/bin/dpkg 返回错误代码 (1)

完整 pastebin 在这里:http://pastebin.com/LYKQ5Xde

我尝试按照某个论坛上的建议执行“sudo dpkg-reconfigure -phigh -a”,但出现了同样的 perl 错误:

/usr/bin/perl:加载共享库时出错:/usr/lib/libperl.so.5.14:e_ident 中的非零填充

非常感谢您的帮助,谢谢!

答案1

尝试重新安装包含 libperl.so.5.14 的软件包。该软件包是“perl-base”。尝试

apt-get --reinstall install perl-base

如果此操作仍失败,您可以尝试重新安装软件包文件 (perl-base_5.14....deb)。您可以手动从镜像中下载它,或者它甚至可能仍缓存在上次升级的 /var/cache/apt/archives 中。通过以下方式安装它

dpkg -i perl-base_5.14..whatever..deb

哦,还有一点需要注意:你可以自己找出文件属于哪个包:

$ dpkg -S libperl.so.5.14
perl-base: /usr/lib/libperl.so.5.14.2
perl-base: /usr/lib/libperl.so.5.14

相关内容