安裝出現這種問題很常見,一般是文件衝突引起的。
仔細看一下他說和那個包的文件衝突了!
一般報錯都是這種格式:
file 某個文件 from install of 即將安裝的安裝包 conflicts with file from package 系統已經安裝的安裝包
如果你要安裝某個rpm,遇到這種情況,你可以:
- 卸載已經安裝的包
- 加
–replacefiles
參數,會替換掉衝突的文件 - 加
--force
參數,也會替換掉衝突的文件
如果你是安裝包的製作者,你的軟件包文件和其他軟件衝突了。那就換一下你的文件的名字,不和其他軟件衝突,保證所有用戶都能無障礙安裝即可。
這裏要說的是另一種匪夷所思的情況
我自己製作的安裝包,居然是目錄和系統有衝突!:
這個問題折騰了兩天多,好在,在網上找到了rpmrebuild
工具,通過這個工具對rpm進行解析,然後拿它和以前沒問題的安裝包進行了一下對比,終於發現了問題:
看到了吧,系統中的目錄,權限應該是755,然而我的目錄權限是775,安裝的時候目錄權限一致纔會進行合併,權限不一致,系統直接認爲是有衝突!
如果想批量修改權限的話,只需要:
find . -type d | xargs chmod -v 755
這樣就會修改當前目錄下所有目錄的權限爲755
我這裏是一些特殊原因造成了打包過程中權限錯誤。如果其他小夥伴製作rpm的安裝包也遇到這個問題,已經要先檢查一下目錄的權限,權限的不一致將會導致這個問題。
如果用戶自作聰明--force
無腦安裝了導致系統出現問題,那軟件的鍋可就大發了…
參考鏈接:
- 這篇文章幫了我大忙,就是他的step9給了我靈感找出了癥結所在,(雖然他的解決方案治標不治本)https://blog.csdn.net/nirendao/article/details/79302135
- rpmrebuild下載:https://sourceforge.net/projects/rpmrebuild/