Debian/Ubuntu 删除 /var/lib/apt/lists 和 /var/apt/cache 后可以重新初始化它们吗?

Debian/Ubuntu 删除 /var/lib/apt/lists 和 /var/apt/cache 后可以重新初始化它们吗?

删除或最小化 /var/lib/apt/lists 和 /var/apt/cache 后,是否可以恢复它们的功能?

我正在尝试将 Ubuntu VM 缩小到最小尺寸,并决定删除 /var/lib/apt/lists 和 /var/cache/apt,以便在系统需要更新时恢复它们。我已经完成了 /var/cache/apt,没有重大副作用,只需重新创建一些目录即可重新启用它。 /var/lib/apt/lists 是我不确定的。是否可以删除它并通过重新创建 /var/cache/apt 来恢复其功能?

这样做会破坏 apt 和 dpkg 对系统配置的知识吗?或者这些知识存储在其他地方吗?

答案1

是的,您可以删除它们!

让我们克隆一个虚拟机并看看会发生什么!:)

$ rm -r /var/cache/apt /var/lib/apt/lists
$ apt-get update #takes a while re-fetching everything
$ apt-get install <some-random-package>

操作后目录已重新创建apt-get update,一切正常。*.gpg如果您感到疑神疑鬼,我可能会保留这些文件,但除此之外,这些文件都会消失。

过去,我遇到过必须手动解决的问题mkdir /var/cache/apt/archives,但这似乎不再是问题。

答案2

在 Ubuntu 10.04 LTS 上,目录不会重新创建。因此,您必须小心不要删除这些目录。您可以使用以下命令仅删除文件。

sudo find /var/cache/apt/ -type f -exec rm -v {} \;
sudo find /var/lib/apt/lists -type f -exec rm -v {} \;

要重新创建缓存,请使用

sudo apt-get update

更好的答案可能是Debian/Ubuntu - 如何删除 /var/cache/apt 结构后恢复它?

相关内容