清理 /var/backups

清理 /var/backups

我在 /var/backups 中发现了很多旧文件,其中大部分是 dpkg 文件。有些文件已有一年多历史。我在 cron 文件中看到 dpkg 创建了这些文件作为备份,但没有看到它们被删除的任何地方。难道不应该有一个吗?

答案1

我认为你指的是创建的文件/etc/cron.daily/dpkg。它应该只创建7每个文件的版本。这 7 个文件可以追溯到几年前,因为只有发生更改时才会创建新文件。

cron 脚本显示备份数量是硬编码的(因此不可配置),并包含注释

# 备份包含用户数据的 dpkg 数据库的最后 7 个版本。

如果您看到超过 7 个版本的文件,则脚本中存在错误。

答案2

基本原理

3.3 安装的软件包

Debian 上有两个已安装软件包列表。创建这些列表的原始文件是/var/lib/dpkg/status。此文件不能损坏,否则您的系统将受到攻击。这是软件包管理器 的主数据库dpkg

Debian 软件包系统保留了上次dpkg运行的旧副本/var/lib/dpkg/status-old为了防止系统在崩溃或文件系统损坏时遭受更大损害,/var/backups当文件与上一次副本不同时,会创建此文件的每日备份。备份代码位于/etc/cron.daily/standard

非正式列表是通过命令dpkg -l或启动dselect并使用选择项创建的。或者通过使用任何其他包管理器前端。此列表由包的名称(精简为大约 40 个字符)、每个包的安装版本和简短描述组成。这旨在便于阅读。

出于技术目的,您可以dpkg生成软件包及其选择状态的列表(即installholddeinstall)。这是由 创建的dpkg --get-selections。此输出旨在由程序再次解析,例如,dpkg --set-selections这将更改其内部数据库中软件包的状态。随后的dselect-upgrade操作是apt-get will安装所有新软件包。


难道不应该有一个吗?

最好有备份但不需要,而不是没有备份但需要备份。最好留给用户去做,而不是自动化,但这只是我的观点。

相关内容