Centos6

執行 yum update 時 HTTPD 和 HTTPD24 文件衝突阻止更新

  • September 25, 2020

類似的衝突問題

遇到衝突問題的文件幾乎與上面連結中的文件相同。但是,我並沒有像在連結中發布問題的人那樣嘗試安裝 php56w…等,我只是想yum update

我想知道如何解決衝突以完成我的yum update.

Transaction Summary
===============================================================================================================================================================================================================================================================================================================================
Install      31 Package(s)
Upgrade     334 Package(s)

Total size: 282 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test


Transaction Check Error:
 file /opt/rh/httpd24/root/etc/httpd/conf.d/README conflicts between attempted installs of httpd24-httpd-2.4.34-18.el6.x86_64 and httpd-2.2.15-69.el6.centos.x86_64
 file /opt/rh/httpd24/root/etc/httpd/conf/magic conflicts between attempted installs of httpd24-httpd-2.4.34-18.el6.x86_64 and httpd-2.2.15-69.el6.centos.x86_64
 file /opt/rh/httpd24/root/etc/httpd/logs conflicts between attempted installs of httpd24-httpd-2.4.34-18.el6.x86_64 and httpd-2.2.15-69.el6.centos.x86_64
 file /opt/rh/httpd24/root/etc/httpd/modules conflicts between attempted installs of httpd24-httpd-2.4.34-18.el6.x86_64 and httpd-2.2.15-69.el6.centos.x86_64
 file /opt/rh/httpd24/root/etc/httpd/run conflicts between attempted installs of httpd24-httpd-2.4.34-18.el6.x86_64 and httpd-2.2.15-69.el6.centos.x86_64

Error Summary

(背景): 最初httpd是安裝的,由於安全原因httpd24,後來安裝了。(在原始安裝期間我不在身邊)。目前,我不知道沖突背後的原因。

yum在此之前也被一個損壞的回購阻止。我嘗試使用該參數--disablerepo=<nameofrepo>來解決此問題,但由於某種原因,它不起作用,我通過更改enable=1enable=0. 在這裡推薦。


我想了解更多並找到了這篇文章,但它是 RH 的訂閱者只讀。

是修復這裡提到的刪除或替換文件的唯一方法嗎?

儘管第一個答案的前幾行表明:

在大多數情況下,從另一個 RPM 包替換文件是個壞主意,我強烈建議您不要嘗試這樣做。也就是說,應用以下風險自負。

如果可能的話,我想解決衝突而不是使用破壞性的方法。

好吧,我確實可以訪問那篇僅限訂閱者的文章,並且它提供的解決方案非常不明顯。

那裡描述的問題是,在某些時候/etc/httpd被建立了一個符號連結到/opt/rh/httpd24/root/etc/httpd. 這會導致將其配置儲存在 中的舊 httpd 包/etc/httpd嘗試覆蓋由較新包創建的文件。

要驗證這是您的問題,請查看是否/etc/httpd是符號連結:

[root@localhost ~]# ls -ld /etc/httpd

解決方案只是刪除符號連結。

[root@localhost ~]# rm -f /etc/httpd

注意:您的系統在不到兩個月的時間內就失去了支持。您應該盡快升級到目前的發行版(例如 CentOS 8)。

引用自:https://serverfault.com/questions/1035302