為什么linux安裝程序會很麻煩寥殖?

Linux下安裝軟件其實可以和Windows一樣簡便(其實是遠比Windows簡便)玩讳;但安裝軟件的方式不止一種:和Windows下一樣,你可以用正規(guī)的msi包自動安裝嚼贡;也可以從別人的機器把PS/CS/SC之類軟件拷貝過來熏纯、甚至是直接拷源碼自己編譯。

不同之處在于编曼,Windows下豆巨,msi/*install.exe這種標準方式剩辟,有程序員專門寫了全套的安裝配置程序掐场,所以你一點就能裝、裝完能在開始菜單/桌面/系統(tǒng)控制面板的軟件列表中看到它贩猎;但直接拷貝過來的熊户,你得自己建立快捷方式、自己處理它在注冊表和/或其他地方的注冊/配置信息(否則可能壓根無法運行)吭服、稍有不匹配就無法運行——總之極為繁瑣嚷堡,而且往往“集成”不到控制面板。

Linux下也一樣艇棕。

不過蝌戒,Linux下,軟件的維護較為簡單沼琉,不像Windows那樣“曲折隱晦”北苟;因此如果你懂的話,也可以做到“手工安裝”打瘪。

因此友鼻,網上就有了很多很多一知半解的劣質教程傻昙,熱衷于教人從源碼安裝、從非正規(guī)來源強行安裝——然后還可能和系統(tǒng)原有的軟件產生沖突彩扔,產生種種棘手問題妆档。

這種垃圾信息,中文互聯(lián)網上尤其多——或者說虫碉,中文互聯(lián)網反而極少正規(guī)的安裝教程贾惦,越發(fā)凸顯了這類不走正規(guī)路線的教程之多。

Linux下的軟件安裝敦捧,實質上有如下四種纤虽,“正規(guī)”程度依次遞減:

1、使用標準的yum/apt/yast包管理程序安裝

2绞惦、使用標準rpm/deb或廠商自己的安裝包(比如nVidia的顯卡驅動用的bin包)安裝

3逼纸、直接解壓軟件開發(fā)者的tar.gz包

4、自源碼編譯

其中:

1济蝉、使用標準的yum/apt/yast包管理程序安裝

這種安裝方式相當于蘋果/安卓平臺上的“應用商店”安裝杰刽,是最安全可靠的安裝模式。

通過這種方式安裝的軟件王滤,不僅完全契合你的操作系統(tǒng)本身贺嫂,而且可以保證和系統(tǒng)其他軟件包的相容性,一般來說是不可能遇到沖突的雁乡。

Linux有很多發(fā)行版第喳;其中一些面對服務器的版本會非常保守,里面的每一個軟件都會經過連續(xù)多年的測試踱稍,穩(wěn)定度極高曲饱。但相應的,這里面的軟件就會老舊一些珠月。典型如Redhat/CentOS/Debian(stable版)等扩淀。用這類版本就很容易遇到“急需的軟件找不到”問題——因此,不建議你在桌面使用它們啤挎。

fedora驻谆、Ubuntu、Debian(testing)等版本內容相對較新庆聘,穩(wěn)定度也還不錯胜臊,建議用它們當桌面使用。這可以盡量減少你“找不到較新軟件”的困擾伙判。

2象对、使用標準rpm/deb或廠商自己的安裝包(比如nVidia的顯卡驅動用的bin包)安裝

這種方式相當于Windows下的安裝包安裝,安全性/穩(wěn)定度都還不錯澳腹;但可能會因為你用了過新/過舊的安裝包而和系統(tǒng)其他部分產生相容性問題——比如系統(tǒng)用python2.4你到網上拖了個python3或python1.5织盼、又強行把它裝上去還附加到路徑最前杨何,那么很可能就會造成其他依賴python的軟件出現(xiàn)混亂。

另一個典型案例就是你裝了nVidia的bin包之后沥邻,經常在系統(tǒng)更新(尤其是更新內核之后)無法進入圖形界面危虱。這就是因為nVidia的顯卡驅動并沒有被Linux軟件倉庫自動管理,因此出現(xiàn)了內核-驅動之間的不匹配問題唐全。

所以埃跷,重復一遍:建議優(yōu)先使用yum/apt/yast等命令,通過系統(tǒng)軟件倉庫安裝應用邮利。不建議自己下軟件包安裝弥雹。

哪怕是在Redhat系上安裝其他地方下載的標準rpm包,都是不建議的延届。

3剪勿、直接解壓軟件開發(fā)者的tar.gz包

這種類似于Windows的“免安裝綠色版”軟件。

你可以把它解壓到你自己的用戶目錄方庭,然后在自己的bash.rc之類配置文件中厕吉,用export把它加入path——這樣你才可以直接在shell中敲它提供的新命令。

這種方式適用于試用新軟件械念、或者僅為自己使用而下載軟件头朱;不建議把它加入系統(tǒng)路徑——也就是不建議用su取得超級用戶權限、把它安裝到系統(tǒng)目錄龄减。

因為這種東西和系統(tǒng)的相容性未經測試项钮,后果完全不可預料。

4希停、自源碼編譯

這個方式和3類似烁巫,也不建議安裝到系統(tǒng)目錄。

因為它比3更不可靠:編譯后的庫文件脖苏、應用可能散落在諸多目錄程拭,一不小心就弄得到處都是垃圾、甚至可能覆蓋掉系統(tǒng)本身自帶的關鍵庫棍潘,引起系統(tǒng)崩潰。

這種東西和3一樣崖媚,未經系統(tǒng)包管理器“把關”亦歉,無法保證它不和系統(tǒng)組件相互覆蓋。

除非你完全明白Linux里里外外都是怎么回事畅哑,否則不建議使用3/4安裝方式肴楷。

當然,編譯荠呐,然后放自己用戶目錄使用赛蔫,這樣還是安全的——換句話說砂客,只要不動用root權限,隨你怎么折騰呵恢。

5鞠值、其他特殊情況

python有個pip包管理器,可以自動安裝各種python軟件包渗钉,比如Django之類東西彤恶。

pip可以把軟件安裝到用戶目錄,也可以通過root權限安裝到系統(tǒng)目錄鳄橘;但強烈不建議你動用root權限声离。

事實上,大多數(shù)Linux發(fā)行版的包管理器本身就可以通過系統(tǒng)軟件倉庫安裝Django瘫怜;你應該優(yōu)先使用它而不是pip术徊。因為前者可以保證不出現(xiàn)相容性問題。

當然鲸湃,很多時候弧关,Linux本身的軟件倉庫可能稍微“老舊”一些,讓你得不到最新版的Django或者其他軟件包唤锉;甚至有時候世囊,它壓根就沒有某個流行python包。

這時候你可能不得不使用pip窿祥;那么株憾,記住不要用su提升權限,讓pip把軟件包裝給你自己用就行——如果的確需要多個賬戶一起用晒衩,那么可以把它安裝到opt/var之類目錄嗤瞎,但盡量不要讓它直接進系統(tǒng)目錄,以免造成混亂听系。

總結起來其實就一句話:如果你有絲毫含糊贝奇,請用系統(tǒng)軟件倉庫(yum/apt/yast),不要碰你不懂的東西靠胜!

——換句話說:對初學者來說掉瞳,一個能解決你幾乎所有需求的軟件倉庫才是最實惠的;因此請尋找軟件倉庫最新最全的Linux發(fā)行版(fedora/Ubuntu等)浪漠,千萬不要聽所謂的“老鳥”瞎忽悠陕习。

——同樣的,如果你要尋找某個軟件的安裝/配置教程址愿,請尋找和你使用的系統(tǒng)相同的该镣、直接通過標準軟件倉庫(yum/apt/yast)安裝的那種。除非是極不常見的小眾軟件响谓、或者為了嘗鮮某個軟件最新版的某個新特性损合,凡讓你繞開系統(tǒng)軟件倉庫的教程都是垃圾省艳。

其實也不需要多么小心謹慎。關鍵是你得知道它是靠什么管理軟件包的嫁审,盡量不要破壞它——那些著名發(fā)行版的測試還是非常完善的跋炕,極少出錯(真錯了你還可以提交個bug報告讓他們改)。

換句話說土居,和Windows不同枣购,Linux基礎系統(tǒng)提供了太過豐富的內容、這些內容又組合起來擦耀、彼此互為基礎的給你提供了很多很多的便利工具——這就使得這么多的庫棉圈、編程語言、shell眷蜓、shell script彼此依賴分瘾,成了一張網。

那么吁系,當你安裝一個基礎軟件(如python解釋器)時德召,就很容易破壞軟件網之間的依賴——相比之下,Windows因為默認不提供python/php/perl等等等等支持而顯得清爽干凈汽纤、不易出錯上岗。

但如果你的確需要這么多支持,那么你還是要在Windows上裝它們蕴坪、依賴它們肴掷、維護它們。這時候反而更加耗費精力背传。

Linux則有一個強大的社區(qū)呆瞻,他們幫你把所有這些軟件維護的井井有條、幫你解決了所有這些軟件包之間的依賴問題径玖,使得你可以“開箱即用”痴脾。

那么,你要做的梳星,就是盡量配合他們赞赖,不要破壞他們已經解決好了的依賴網——對于真正用Linux而不是玩Linux的人來說,這才是選擇不同發(fā)行版的最佳依據(jù)丰泊。

因此薯定,強烈建議使用發(fā)行版自帶的包安裝工具,因為這樣你才能真正利用好社區(qū)為你維護好的軟件倉庫瞳购。

如果迫不得已使用了你的Linux發(fā)行版軟件倉庫之外的軟件,請盡量把它隔離出去——隔離的辦法有很多很多亏推,從設置路徑前綴(從而把它安裝到/opt或/var或其他位置)学赛、利用chroot……不一而足年堆。

反之,如果你像那些半瓶子咣當?shù)慕坛桃粯诱到剑衍浖ake install到系統(tǒng)目錄变丧,你就不得不經常性的手動調整它們的依賴關系——這時候,你才不得不“小心謹慎”绢掰。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末痒蓬,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子滴劲,更是在濱河造成了極大的恐慌攻晒,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,284評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件班挖,死亡現(xiàn)場離奇詭異鲁捏,居然都是意外死亡,警方通過查閱死者的電腦和手機萧芙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,115評論 3 395
  • 文/潘曉璐 我一進店門给梅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人双揪,你說我怎么就攤上這事动羽。” “怎么了渔期?”我有些...
    開封第一講書人閱讀 164,614評論 0 354
  • 文/不壞的土叔 我叫張陵运吓,是天一觀的道長。 經常有香客問我擎场,道長羽德,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,671評論 1 293
  • 正文 為了忘掉前任迅办,我火速辦了婚禮宅静,結果婚禮上,老公的妹妹穿的比我還像新娘站欺。我一直安慰自己姨夹,他們只是感情好,可當我...
    茶點故事閱讀 67,699評論 6 392
  • 文/花漫 我一把揭開白布矾策。 她就那樣靜靜地躺著磷账,像睡著了一般。 火紅的嫁衣襯著肌膚如雪贾虽。 梳的紋絲不亂的頭發(fā)上逃糟,一...
    開封第一講書人閱讀 51,562評論 1 305
  • 那天,我揣著相機與錄音,去河邊找鬼绰咽。 笑死菇肃,一個胖子當著我的面吹牛,可吹牛的內容都是我干的取募。 我是一名探鬼主播琐谤,決...
    沈念sama閱讀 40,309評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼玩敏!你這毒婦竟也來了斗忌?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,223評論 0 276
  • 序言:老撾萬榮一對情侶失蹤旺聚,失蹤者是張志新(化名)和其女友劉穎织阳,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體翻屈,經...
    沈念sama閱讀 45,668評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡陈哑,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,859評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了伸眶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片惊窖。...
    茶點故事閱讀 39,981評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖厘贼,靈堂內的尸體忽然破棺而出界酒,到底是詐尸還是另有隱情,我是刑警寧澤嘴秸,帶...
    沈念sama閱讀 35,705評論 5 347
  • 正文 年R本政府宣布毁欣,位于F島的核電站,受9級特大地震影響岳掐,放射性物質發(fā)生泄漏凭疮。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,310評論 3 330
  • 文/蒙蒙 一串述、第九天 我趴在偏房一處隱蔽的房頂上張望执解。 院中可真熱鬧,春花似錦纲酗、人聲如沸衰腌。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,904評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽右蕊。三九已至,卻和暖如春吮螺,著一層夾襖步出監(jiān)牢的瞬間饶囚,已是汗流浹背帕翻。 一陣腳步聲響...
    開封第一講書人閱讀 33,023評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留坯约,地道東北人熊咽。 一個月前我還...
    沈念sama閱讀 48,146評論 3 370
  • 正文 我出身青樓莫鸭,卻偏偏與公主長得像闹丐,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子被因,可洞房花燭夜當晚...
    茶點故事閱讀 44,933評論 2 355

推薦閱讀更多精彩內容