文件损坏,如何在 Debian 上重新安装软件包?

文件损坏,如何在 Debian 上重新安装软件包?

在非正常关机后,fsck 报告文件系统的几个部分损坏,显然影响了已安装的软件包(幸运的是没有用户数据受到影响)。

有没有一种简单的方法可以让我从头开始重新安装这些软件包,例如告诉 apt 或 dpkg 再次安装相同的软件包,而不更改其标志(特别是保留自动安装的标志)?

我有受影响文件的列表,并且通过一些努力,可以找出我需要重新安装哪些软件包。另一种方法是重新安装系统上安装的所有内容。

答案1

对于每个损坏的文件,可以通过以下方式获取安装该文件的软件包:

dpkg -S /full/path/of/the/corrupted/file

然后您可以使用以下命令重新安装它:

apt-get --reinstall install package

如果所有损坏的文件都在一个文件中list.txt,那么您可以通过以下方式获取所有关联的包:

dpkg -S $(cat list.txt) | cut -d: -f1 | sort -u

当然,使用单个命令安装所有这些软件包:

apt-get --reinstall install $(dpkg -S $(cat list.txt) | cut -d: -f1 | sort -u)

相关内容