![我如何找到原始未改变的配置文件来与 *.rpmnew 文件进行比较?](https://linux22.com/image/579400/%E6%88%91%E5%A6%82%E4%BD%95%E6%89%BE%E5%88%B0%E5%8E%9F%E5%A7%8B%E6%9C%AA%E6%94%B9%E5%8F%98%E7%9A%84%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6%E6%9D%A5%E4%B8%8E%20*.rpmnew%20%E6%96%87%E4%BB%B6%E8%BF%9B%E8%A1%8C%E6%AF%94%E8%BE%83%EF%BC%9F.png)
从 CentOS 5.7 升级到 5.8 时我收到以下警告:
warning: /etc/sysconfig/iptables-config created as /etc/sysconfig/iptables-config.rpmnew
warning: /etc/ssh/sshd_config created as /etc/ssh/sshd_config.rpmnew
warning: /etc/odbcinst.ini created as /etc/odbcinst.ini.rpmnew
(要了解此类文件的原因以及可以使用它们做什么,请阅读 -为什么更新后会有.rpmnew 文件?)
我想通过比较旧默认文件(原始未更改的配置文件)和新默认文件 (*.rpmnew) 来了解默认配置文件中到底发生了哪些变化。然后,我可以将更改应用于我修改的文件(又称 diff 合并)。
问题是我不知道在哪里可以找到原始未改变的配置文件......
更新:
所以我的问题实际上是:
- 如何找出软件包的先前版本?
- 如何获取该版本的文件?
答案1
原始文件应该是没有 .rpmnew 的文件
例如,你应该有一个
/etc/ssh/sshd_config
差异 /etc/ssh/sshd_config /etc/ssh/sshd_config.rpm新
将显示差异。 rpm 这样做是为了防止覆盖您的设置。
如果您正在寻找以前安装的 rpm,则需要找到该 rpm,然后使用 rpm2cpio 提取它,然后使用 cpio 解压文件。
然后您应该能够在解压的文件中找到默认配置文件。