![如何强制“yum reinstall”覆盖“/var”子目录中已更改的文件?](https://linux22.com/image/1584618/%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E2%80%9Cyum%20reinstall%E2%80%9D%E8%A6%86%E7%9B%96%E2%80%9C%2Fvar%E2%80%9D%E5%AD%90%E7%9B%AE%E5%BD%95%E4%B8%AD%E5%B7%B2%E6%9B%B4%E6%94%B9%E7%9A%84%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我有一个软件包[1],已经被多个用户使用。
它的 RPM 是使用 Cmake 创建的。
由于历史原因,软件包会将一些文件安装在的子目录中,/opt.
因此,如果这些文件中的任何一个发生更改,Cmake 会假定更改的文件位于中/opt
,因此它是一个配置文件(据我所知,只有配置文件才应该放在下/opt
),如果yum reinstall
执行了软件包的 ,则更改的文件是不是被覆盖。
显而易见的解决方案是安装到非/opt
位置,例如,这对于新版本有效,但正如我所说,我有一个使用的/usr.
用户群。/opt
关于如何yum reinstall
强制覆写/opt
子目录中的文件是否有变化?
[1] 操作系统:CentOS/RedHat 7.{3|4|6}
答案1
rpm -ivh --force packagename.rpm
安装该包来替换所有现有文件。