为什么 dpkg 不会在已安装的软件包上使用 --unpack 自动重命名 .conf 文件?

为什么 dpkg 不会在已安装的软件包上使用 --unpack 自动重命名 .conf 文件?

我正在测试一些东西并想知道--auto-deconfigure和之间的区别--unpack

dpkg --auto-deconfigure --install P.deb

如果 P 有一个 Break 字段,例如:

Break: B

并且 B 当前已安装,则dpkg deconfigures B新状态为“半配置”。

同样地,你可以“解包”B优先:

dpkg --install B.deb
...
dpkg --unpack B.deb
dpkg --install P.deb

在这种情况下 B 的新状态是“已解压。”

但是,在这两种情况下,/etc/B.conf文件都保留在那里。因此看起来软件包仍然已完全安装。

我的问题是:为什么不dpkg删除或重命名B.conf?因为当我执行时,--unpack配置文件名为:

/etc/B.conf.dpkg-new

这很有道理。在这种情况下,B 确实没有配置!

似乎--auto-deconfigure--unpack命令也应该重命名为,/etc/B.conf然后/etc/B.conf.dpkg-new可以--configure按预期恢复文件。

我猜大多数软件并不关心 a 是否.conf存在,因此它是否存在最终并没有太大区别。这是否是他们可以将其保留在原处的原因?

答案1

除非清除该包,否则它的配置文件不会被删除。

配置文件可以由用户修改,因此,除非用户要求,否则我们不会删除它们。

相关内容