我已经将 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