Debian删除/ var / lib / dpkg / info /,有没有办法保存系统?

意外删除了/ var / lib / dpkg / info /,现在我在安装/删除软件包时遇到问题,提示错误,导致无法find关于安装软件包的信息。

有没有什么办法来保存系统或需要彻底重新安装debian? :/

你应该能够使用这样的东西重新生成目录:

for i in $(dpkg -l|awk '/^ii/ {print $2}') do apt-get --reinstall -y install $i done 

这个片段应该做的是重新安装你已经安装的每个软件包。 它也将升级一切。 如果您不想这样做,则必须扩展脚本以安装您当前安装的特定版本,但由于这些软件包可能不再存在于存储库中,因此无法保证正常工作。

更多信息和稍微不同的方法: http : //people.adams.edu/~cdmiller/posts/Ubuntu-dpkg-recovery/

编辑:从上面链接的文章重要提示:

有些软件包仍然不能正确安装,因为更多的东西从/ var / lib / dpkg丢失。 特别是包“ucf”对于使内核以及其他可能的其他一些正确安装非常重要。

没有/var/lib/dpkg/info/ucf.templates,内核安装会产生这个错误:

failed to install/upgrade: User postinst hook script [/sbin/update-grub] exited with value 10

安装ucf:

apt-get --reinstall install ucf

那篇文章描述了从完全删除/var/lib/dpkg中恢复,所以这个额外的步骤可能不适用于你的情况。