解決RPM包相互依賴的有效方法


出自:http://blog.csdn.net/kai27ks/article/details/7473683

前言:常用RPM的朋友們都知道,RPM簡單易用,但是它的依賴關系是最頭疼的!有時候比方說A包需要B包,B包需要C包,C包需要A包,好了。這就是最常見的死鎖了(類似數據庫有木有?)。這個時候有以下幾種方式可以解決:

   A、強制安裝 ----暴力型

      使用rpm -i --force --nodeps  強制安裝。忽略依賴關系。這種方法你可以先裝A包,再裝B包,再裝C包。這樣還是有點隱患的,感覺不是很踏實(雖然其實目前沒發現什么不好)。安裝后使用成功的前提是:你要搞清楚依賴關系,並且把這些包都裝好。好處是:不用管它們的具體依賴關系先后順序。

   B、一次性全裝上--- 一網打盡型

      可以把依賴的幾個包拷出來放在同一個文件夾里 然后 rpm -ivn *.rpm   這樣也可以 前提也是一個都不能少。

   C、 使用yum技術安裝 --使用服務器方式

      yum是一個服務器資源技術。通過在線下載服務器資源的方式。 缺點:太繁瑣。要設置一堆的東西。優點:設置以后,很方便,需要的大多數資源都可以從服務器上找到。這點感覺很像maven2有木有?

      參考:http://wenku.baidu.com/view/428c851352d380eb62946ded.html

   D、使用redhat提供的解決方案,安裝依賴關系庫(強烈推薦)

    例子:先安裝rpmdb,之后使用

   # rpm -ivh --aid samba*.rpm (一定要安裝rpmdb后才可以用這種方式安裝排除依賴關系)     該命令會自動把依賴關系中需要安裝的包都安裝上,包括:      cups-libs-1.1.17-13.3.6.rpm     samba-common-3.0.0-14.3E.i386.rpm      samba-3.0.0-14.3E.i386.rpm      samba-client-3.0.0-14.3E.i386.rpm      可以很簡單地解決直接安裝samba-3.0.0-14.3E.i386.rpm或者samba-client-3.0.0-14.3E.i386.rpm對samba-common-3.0.0-14.3E.i386.rpm 的依賴,而安裝   sambacommon-3.0.0-14.3E.i386.rpm 出現對都libcups.so.2庫文件的依賴,而且該庫文件所在的rpm包無法很快確定      上述方法可以很快解決依賴關系


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM