在安装64位和32位httpd包时出现了问题。
当其中一个包通过yum remove卸载时,它会删除某些共享文件,比如/etc/httpd/conf/httpd.conf。
是否有一种方法可以排除通过rpm或yum删除文件?我查看了两个man页面,但没有看到任何相关的选项。
顺便说一句:我知道我们可以备份文件,并在卸载后恢复它们。我只想知道有没有更干净更优雅的选择。
发布于 2015-06-10 14:13:28
听起来,包(S)被配置了,这样httpd.conf文件(S)就不会被声明为"config“文件,所以当这个包被删除时,它们不会被保存。如果httpd.conf被声明为一个配置文件,并在安装后进行了更改,那么它将在包删除期间保存为httpd.conf.rpmsave。有关在移除包期间所采取的步骤,请参见http://ftp.rpm.org/max-rpm/ch-rpm-erase.html。
您必须提前预测这种情况,以便为其做好准备--正如您提到的那样,使用文件备份和恢复,或者使用rpm -qc <package>查询包的配置文件。
发布于 2015-06-11 16:46:13
可悲的是(或者幸运的是,取决于您如何看待它)没有选择性文件删除这样的事情。我建议列出这些文件,标记为这些文件的配置文件,以及所讨论的每个包的文档,并查看您想要保存的文件列表。
使用
rpm -ql packagenamerpm -qc packagenamerpm -qd packagename然后遍历这些列表,手动为应该是配置文件但未标记为配置文件的文件(即出现在rpm -ql输出中的文件)创建备份,@Jeff已经指出了这一点。
https://unix.stackexchange.com/questions/208722
复制相似问题