【學(xué)了就忘Linux軟件包管理】— 1.軟件包分類

一辉阶、Linux系統(tǒng)軟件包分類

Linux系統(tǒng)下只有源碼包先壕、二進制包,就這兩種包谆甜。

Tips:
windows系統(tǒng)中的軟件和Linux系統(tǒng)的軟件是不通用的垃僚。
windows系統(tǒng)中的軟件是經(jīng)過編譯后的.exe文件和.msi。

二规辱、源碼包

1谆棺、什么是源碼包

以前我們一直在說,Linux系統(tǒng)飛速發(fā)展的一個根本原因就是開源罕袋。所謂的源碼包改淑,就是直接給你一個開放的源程序。作者寫的時候是什么樣浴讯,寫完就直接給你溅固,這就是源碼包。

Linux系統(tǒng)中最早的程序都是這樣的源碼包兰珍。

2、源碼包的優(yōu)點

  • 開源询吴,如果有足夠的能力掠河,可以修改源代碼(有利于學(xué)習(xí),有利于推廣)猛计。
  • 可以自由選擇所需的功能唠摹。
  • 軟件是編譯安裝(編譯:把abcd翻譯成0101的過程),所以更加適合自己的系統(tǒng)奉瘤,更加穩(wěn)定也效率更高(之前有一個大概的估算勾拉,如果使用源碼包安裝軟件,要比使用同版本同樣性能的二進制包盗温,軟件的效能要高5個百分點)藕赞。
  • 卸載方便(直接把安裝目錄刪除就可以了,基本上沒有殘余文件)卖局。

3斧蜕、源碼包的缺點

  • 安裝過程步驟較多,尤其安裝較大的軟件集合時(如LAMP環(huán)境搭建)砚偶,容易出現(xiàn)拼寫錯誤批销。
  • 編譯過程時間較長洒闸,安裝比二進制安裝時間長。
  • 因為是編譯安裝均芽,編譯安裝過程容易報錯丘逸,一旦報錯新手很難解決。

三掀宋、二進制包

類似于windows系統(tǒng)的exe文件深纲。二進制包安裝較源碼包安裝更為方便,但是二進制包就不在是開源的了布朦,因為二進制包中是已經(jīng)編譯好的文件囤萤。

1、二進制包分類

  • DPKG包:是由Debian Linux所開發(fā)出來的包管理機制是趴,通過DPKG包Debian Linux就可以進行軟件包管理涛舍。主要應(yīng)用在Debian和unbuntu中。(也經(jīng)常叫deb包)

  • RPM包:是由Red Hat公司所開發(fā)的包管理系統(tǒng)唆途。功能強大富雅,安裝、升級肛搬、查詢和卸載都非常簡單和方便没佑。目前很多Linux都在使用這種包管理方式,包括Fedora温赔、CentoS蛤奢、SuSE等。我們將要學(xué)習(xí)RPM包管理系統(tǒng)陶贼。

提示:
DPKG包和RPM包啤贩,這兩種包系統(tǒng)是不通用的。這也是兩個系統(tǒng)最大的區(qū)別拜秧。
但是Red Hat中的安裝過程和Debian中軟件的安裝是一一對應(yīng)的痹屹。如果以后用到Debian系統(tǒng),查閱一下與之對應(yīng)的命令即可枉氮。

2志衍、RPM包的優(yōu)點:

  • 包管理系統(tǒng)操作簡單,只通過幾個命令就可以實現(xiàn)包的安裝聊替、升級楼肪、查詢和卸載。(編輯過程基本不會報錯了惹悄,因為廠商已經(jīng)提前編譯好了)
  • 安裝速度比源碼包安裝快的多淹辞。

3、RPM包的缺點:

  • 經(jīng)過編譯,不再可以看到源代碼象缀。
  • 功能選擇不如源碼包靈活蔬将。
  • 依賴性。有時我們會發(fā)現(xiàn)需要安裝軟件包a時需要先安裝軟件b和c央星,而安裝b軟件時需要安裝軟件d和e霞怀。這時需要先安裝d和e,再安裝b和c莉给,最后才能安裝a包毙石。所以通過RPM包安裝軟件,如果軟件有依賴性的話颓遏,軟件則是有一定的安裝順序的徐矩。如果依賴性非常強的話,會非常的繁瑣叁幢。(Linux系統(tǒng)中絕大多數(shù)軟件包都會有依賴的軟件包)

注意:這里多強調(diào)一下上邊的依賴性

依賴性分為:

  • 樹形依賴 a-->b--->c
    a包依賴b包滤灯,b包依賴c包。所以需要先安裝c包曼玩,在安裝b包鳞骤,最后在安裝c包。
  • 環(huán)形依賴a--->b--->c--->a
    這種環(huán)形的依賴關(guān)系黍判,按照上邊樹形依賴的解釋豫尽,是無法安裝的。但是這種依賴關(guān)系解決起來很簡單顷帖,就是把a美旧、b、c包同時安裝贬墩,就是用一條命令同時安裝三個包就能解決榴嗅。
  • 模塊依賴(函數(shù)庫依賴)
    最煩麻煩就是這種模塊依賴關(guān)系,我們舉一個例子震糖,嘗試安裝以下文件:
[root@localhost Packages]# rpm -ivh mysql-connector-odbc-5.2.5-7.e17.x86_64.rpm
錯誤:依賴檢測失敗:
libodbc.so.2()(64bit)被mysql-connector-odbc-5.2.5-7.e17.x86_64需要
libodbcinst.so.2()(64bit)被mysql-connector-odbc-5.2.5-7.el7.x86_64需要

注意:
libodbc.so.2是一個文件的名字趴腋,并不是一個包名吊说,你要把這個文件所在的包安裝上,這個文件就存在了优炬。

發(fā)現(xiàn)報錯颁井,需要安裝“l(fā)ibodbc.so.2”函數(shù)庫文件,這時會發(fā)現(xiàn)在光盤中根本找不到這個文件蠢护。那是因為這個函數(shù)庫沒有單獨成包雅宾,是包含在某一個軟件包中的。而如果要知道該文件在哪個軟件包中葵硕,需要查詢網(wǎng)站http://www.rpmfind.net/
(很方便)眉抬,如圖:

點擊搜索之后贯吓,會顯示在不同的Linux版本中,安裝哪個包蜀变,如下圖



這是個網(wǎng)站的原理悄谐,是通過查詢一個RPM包依賴管理的數(shù)據(jù)庫,來解決這個問題的库北。

四爬舰、RPM包的兩種安裝方法

  • 手動(手工命令安裝):就是通過rpm命令手動進行安裝,自己解決包之間的依賴性寒瓦。
  • yum在線安裝:yum命令會自動連接到Red Hat的官方服務(wù)器上的包依賴數(shù)據(jù)庫情屹,不管何種依賴關(guān)系,需要的包都會自動的下載到本地杂腰,然后在自動進行安裝垃你。

注意:如果是正版的Red Hat系列的Linux系統(tǒng),會收費颈墅。但是CentOS里的yum是免費的蜡镶。

還有要注意一點Linux系統(tǒng)中,二進制包恤筛、rpm包官还、默認安裝包都指的是二進制包。yum只是源碼包和二進制包的在線安裝方式毒坛。

五望伦、小結(jié)

軟件既有源碼包版本,又有RPM包版本煎殷,如何選擇屯伞?

建議:

  • 源碼包:如果服務(wù)是給大量客戶端提供訪問的,建議使用源碼包豪直,源碼包效率更高(如搭建LAMP環(huán)境)劣摇。
  • RPM包:如果程序是給少量用戶訪問,或者本地使用的弓乙,建議RPM包末融,因為RPM管理方便。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末暇韧,一起剝皮案震驚了整個濱河市勾习,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌懈玻,老刑警劉巖巧婶,帶你破解...
    沈念sama閱讀 216,843評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡艺栈,警方通過查閱死者的電腦和手機英岭,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來眼滤,“玉大人巴席,你說我怎么就攤上這事∽缧瑁” “怎么了漾唉?”我有些...
    開封第一講書人閱讀 163,187評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長堰塌。 經(jīng)常有香客問我赵刑,道長,這世上最難降的妖魔是什么场刑? 我笑而不...
    開封第一講書人閱讀 58,264評論 1 292
  • 正文 為了忘掉前任般此,我火速辦了婚禮,結(jié)果婚禮上牵现,老公的妹妹穿的比我還像新娘铐懊。我一直安慰自己,他們只是感情好瞎疼,可當我...
    茶點故事閱讀 67,289評論 6 390
  • 文/花漫 我一把揭開白布科乎。 她就那樣靜靜地躺著,像睡著了一般贼急。 火紅的嫁衣襯著肌膚如雪茅茂。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,231評論 1 299
  • 那天太抓,我揣著相機與錄音空闲,去河邊找鬼。 笑死走敌,一個胖子當著我的面吹牛碴倾,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播掉丽,決...
    沈念sama閱讀 40,116評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼跌榔,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了机打?” 一聲冷哼從身側(cè)響起矫户,我...
    開封第一講書人閱讀 38,945評論 0 275
  • 序言:老撾萬榮一對情侶失蹤片迅,失蹤者是張志新(化名)和其女友劉穎残邀,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,367評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡芥挣,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,581評論 2 333
  • 正文 我和宋清朗相戀三年驱闷,在試婚紗的時候發(fā)現(xiàn)自己被綠了者娱。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片郑诺。...
    茶點故事閱讀 39,754評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡贪惹,死狀恐怖惠奸,靈堂內(nèi)的尸體忽然破棺而出相艇,到底是詐尸還是另有隱情腾么,我是刑警寧澤尼荆,帶...
    沈念sama閱讀 35,458評論 5 344
  • 正文 年R本政府宣布萄窜,位于F島的核電站坝咐,受9級特大地震影響循榆,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜墨坚,卻給世界環(huán)境...
    茶點故事閱讀 41,068評論 3 327
  • 文/蒙蒙 一秧饮、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧泽篮,春花似錦盗尸、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,692評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至油狂,卻和暖如春历恐,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背专筷。 一陣腳步聲響...
    開封第一講書人閱讀 32,842評論 1 269
  • 我被黑心中介騙來泰國打工弱贼, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人磷蛹。 一個月前我還...
    沈念sama閱讀 47,797評論 2 369
  • 正文 我出身青樓吮旅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親味咳。 傳聞我的和親對象是個殘疾皇子庇勃,可洞房花燭夜當晚...
    茶點故事閱讀 44,654評論 2 354

推薦閱讀更多精彩內(nèi)容