您好,登錄后才能下訂單哦!
如何理解Linux軟件包依賴問題,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
Linux軟件包依賴關系讓很多使用Linux的人感到很麻煩。在安裝Linux系統時,不是選擇安裝所有的軟件包。在完成安裝后,若再進行軟件安裝的話,就可能會遇到一些依賴關系的問題,如在安裝某些編程軟件包時,系統就可能會提示一些錯誤信息。說需要其他的一些軟件包的支持。
遇到這種Linux軟件包依賴關系的話,該如何處理呢?在談這個具體的解決措施之前,我先跟大家說說在哪些情況下容易出現軟件包的依賴關系問題。
一是在操作系統安裝的時候,沒有選擇全部的軟件包。大部分時候出于安全或者其他方面的原因,Linux系統管理員往往不會選擇安裝全部的軟件包。而只是安裝一些運行相關服務所必要的軟件包。但是有時候系統管理員可能并不清楚哪些軟件包是必須要裝的,否則后續的一些服務將無法啟動;而那些軟件包則是可選的。由于在系統安裝的時候很難一下子弄清楚這些內容,故在Linux系統安裝完畢后,再部署其他一些軟件包的時候,就容易出現這個問題。
二是在Linux服務器上追加其他的一些應用服務時,容易出現類似的問題。如有一次企業需要使用一個Oracle數據庫,我就在原先的文件服務器上安裝Oracle數據庫。但是在Linux操作系統上安裝Oracle服務器是一個很頭疼的問題,需要安裝不少的軟件包。而我一開始部署Linux文件服務器的時候又不知道后來需要安裝Oracle數據庫,故不少的軟件包都沒有裝。而且后來發現,不少的軟件包其實在Linux安裝盤中還沒有,需要自己到網上去下。所以,如果要在原先已經部署好的Linux服務器中追加一些應用服務時,很容易出現這個軟件包的依賴問題。
其實解決這個Linux軟件包依賴問題說簡單也不簡單,說復雜也不復雜。我下面總結了幾個方法,各位若有需要的話可以借鑒一下。
一、根據錯誤提示信息在安裝光盤中尋找。
在安裝軟件包時如果遇到軟件依賴關系問題時,通常情況下系統都會提示相關的信息。如提示“libgd.so.1.8 is needey by php-4.2.2-17”等等。這就表示安裝PHP程序時,需要先安裝libgd.so軟件包。當遇到這個問題時,我建議系統管理員可以根據這個提示信息,先從Linux系統的安裝盤中查找一下是否有這個軟件包。
如上圖所示,在Linux安裝盤中的RPMS目錄下面就存放著大量的軟件包。通常情況下,像上面的libgd.so等常見的軟件包都可以從這個光盤中找到。所以系統管理員根據系統的錯誤提示信息,就可以了解到安裝某個軟件之前先要安裝那個軟件包。然后從系統光盤中找到這個軟件包,并進行安裝即可。另外需要說明的是,向RedHat操作系統,如果采用的是CD安裝盤,則其可能有很多張光盤。而這些軟件包往往不是存儲在一張CD光盤中的。不過可以肯定的是,每張光盤下都會有RPMS這個目錄。當系統管理員不知道某個軟件包存儲在哪個盤中的話,則可以一張張的找過去。雖然比較麻煩一點,但是大部分情況下都會有收獲的。
不過如果采用這個方法有一個限制。像安裝Oracle這種大型的應用軟件就不怎么適用。因為安裝這種大型的軟件本身就比較花費時間。如果等到安裝失敗之后再根據錯誤提示來安裝軟件包的話,則重復來重復去會浪費很多的時間,而且也會讓系統產生很多的垃圾文件。為此除非是一些小型的軟件包,否則的話,***還是根據下面我要介紹的方法來做,以節省軟件安裝的時間。
二、參考官方的文檔。
通常情況下,一些軟件的官方文檔會說明安裝它們的軟件需要哪些軟件包。如在安裝Oracle數據庫時,就必須需要安裝不少的軟件包。到底需要安裝哪些軟件包,在Oracle的官方網站上都會有詳細的說明。我在安裝Oracle數據庫時,就先安裝這個說明,一一來驗證Linux系統中是否安裝了這些軟件包。如果沒有安裝的話,就馬上裝上去。此時各位Linux系統管理員不要抱著僥幸心理,已經不安裝不會有大問題,這是大錯特錯了。對于Oracle公司官方網站建議的軟件包在Oracle數據庫系統安裝之前必須一五一十的安裝上去。否則的話輕則導致數據庫安裝失敗,重者的話會導致后續數據庫運行不穩定。
其實不光是Oracle數據庫系統,其他的一些應用軟件對Linux系統都會有類似的要求。它們要求在安裝它們的應用軟件之前,Linux系統必須安裝有某些軟件包,否則的話安裝就會失敗。所以我建議各位Linux系統管理員,在安裝這些軟件之前,***先到官方網站上去尋找類似的文檔,然后對照文檔的內容去驗證Linux系統是否安裝了這些軟件包。如此的話就可以避免軟件包依賴關系的問題。另外,在網絡上也可以尋找到很多有用的價值。有些安裝過這個軟件的Linux系統管理員,會把自己安裝過程中系統遇到的軟件包依賴關系列舉出來,會一一說明需要先安裝哪些軟件包。這些網絡上的文檔雖然其專業性可能沒有官方提供的文檔那么專業。但是對我們來說也具有很大的參考價值。
三、從專業網絡上查詢。
為了正確安裝某些軟件包,需要安裝一些文件。可是有時候系統管理員可能根據系統的提示還不能夠確定到底安裝哪些軟件包才會有這些文件。特別是對于一些不常用的軟件包或者系統管理員***次接觸的軟件包往往會遇到這種問題。此時,系統管理員就可以到一些專業的網站上去查詢。這里我給大家介紹一個很不錯的網站,即http://rpmfind.net。系統管理員只需要在這個網站搜索的地方輸入需要的文件名字,如libgd.so,則搜索結果中就會顯示需要安裝哪個軟件包才具有這個文件。找到這個軟件包的名字之后,只需要從光盤或者網絡上下載這個軟件包進行安裝即可。當然,在安裝這些軟件包的時候,可能還會遇到其他軟件包依賴關系的問題。如安裝php軟件包需要libgd.so文件,而這個文件屬于gb軟件包。但是在安裝gb軟件包時,可能這個軟件包跟其他軟件包又具有依賴關系,又需要安裝其他軟件包才行。此時系統管理員就需要耐心的一一按順序進行解決了。
可見大部分情況下,在遇到軟件包依賴關系問題的時候,操作系統提供的文件名字與軟件包名字都會有直接的聯系。有可能文件的名字就是軟件包的名字。但是有些時候文件的名字與軟件包的名字會相差甚遠。此時大部分系統管理員可能光憑文件名字無法找到對應的軟件包。此時就需要借助筆者上面談到的一些專業網站,去查詢軟件包的名字了。
另外我還有一個小建議。當系統管理員安裝了某個軟件之后,如果存在軟件包之間的依賴關系,則***能夠拿本子或者通過其他手段記錄下來。因為在以后的工作中很有可能還會需要安裝這些軟件。如此的話,在下次安裝的時候就不用這么麻煩了。可以對照以前的筆記直接安裝需要的軟件包。畢竟在同一個地方摔倒多次不是什么光彩的事情。
以上這些就是我解決Linux軟件包依賴關系問題的絕招。
看完上述內容,你們掌握如何理解Linux軟件包依賴問題的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。