为什么更新后我有 .rpmnew 文件?

Luc*_*c M 19 fedora yum rpm update

我使用 yum 来更新我的 Fedora。一个巨大的更新后,我得到了很多.rpmnew.rpmsave文件。我可以理解我是否修改了这些文件。但我确定我没有编辑这些文件。

我应该如何处理这些文件?下次更新会发生什么?

以下是这些文件的示例:

/usr/share/texmf-var/fonts/map/dvipdfm/updmap/dvipdfm_dl14.map.rpmnew
/usr/share/texmf-var/fonts/map/dvipdfm/updmap/dvipdfm_dl14.map.rpmsave
Run Code Online (Sandbox Code Playgroud)

谢谢

knw*_*iss 26

有两种情况:

  • 如果一个文件是作为 rpm 的一部分安装的,它是一个配置文件(即用%config标签标记),之后您已经编辑了该文件,现在更新了 rpm,那么新的配置文件(来自较新的 rpm)将替换您的旧配置文件(即成为活动文件)。后者将使用.rpmsave后缀重命名。
  • 如果一个文件是作为 rpm 的一部分安装的,它是一个 noreplace-config 文件(即用%config(noreplace)标签标记),之后您已经编辑了该文件,现在更新了 rpm,那么您的旧配置文件将保持原样(即保持活动状态)并且新的配置文件(来自较新的 rpm)将被复制到带有.rpmnew后缀的磁盘。

有关所有详细信息,请参见例如此表

在这两种情况下,您或某个程序都编辑了配置文件,这就是您在升级后看到.rpmsave/.rpmnew文件的原因,因为如果本地文件未受影响,rpm 将静默升级配置文件且无需备份文件。

系统升级后,最好扫描您的文件系统以查找这些文件,并确保正确的配置文件处于活动状态,并且可能会将 .rpmnew 文件中的新内容合并到生产文件中。完成后,您可以删除.rpmsave.rpmnew文件。


wom*_*ble 10

有时包管理器只是对什么构成修改后的文件有点困惑。通常是因为某个程序或其他程序进行了修改(尤其是那些 TeX 映射文件)。

在处理这些类型的文件时,我使用两种方法,这取决于我的心情、系统的重要性以及我对相关文件的了解程度:

  1. 在系统正常工作一段时间后,只需删除那些我认为没有改变的(可能很危险,但我的假设是,如果它真的很重要,我现在已经注意到了。请注意,我只做这是在“低价值”系统上的,如果我塞满了,我可以花一些时间来修复);
  2. diff -u <current file> <new/save version>在文件的各个版本之间执行统一的差异 ( ),检查输出并集成版本之间的必要更改以加快所有速度,然后在我对事情感到满意时删除保存/新文件。更多的工作(虽然小的 shell 脚本来查找和区分文件有帮助)但几乎可以保证不会破坏任何东西,除非我搞砸了合并。