[Linux實(shí)用命令]-7-軟件的安裝與管理

引言

這篇文章介紹Linux四個(gè)運(yùn)用最普遍的軟件包管理器提完。使用CentOS和Ubuntu這兩個(gè)不同的Linux發(fā)行版,分別介紹rpm、yum挎峦、dpkg和apt-get的使用方法。

文章目錄

  • 0×1.RPM和DPKG軟件管理機(jī)制淺析
  • 0×2.使用rpm命令安裝卸載軟件
  • 0×3.使用yum安裝卸載軟件

0×1.RPM和DPKG軟件管理機(jī)制淺析

目前Linux大多數(shù)發(fā)行版中RPM和DPKG是兩種比較常用的管理機(jī)制搜吧。RPM軟件管理機(jī)制的主流發(fā)行版是Red Hat市俊、CentOS、Fedora滤奈;DPKG軟件管理機(jī)制的主流發(fā)行版是Debian摆昧、Ubuntu。這里不對(duì)這兩種機(jī)制做過(guò)多的解釋蜒程,只需要知道绅你,兩種軟件管理機(jī)制使用的安裝命令不一樣就可以了。

Linux軟件包的命名有一定的規(guī)律,一般的結(jié)構(gòu)是"軟件名稱-版本-適合的系統(tǒng)平臺(tái).擴(kuò)展名"昭躺。

例如忌锯,一個(gè)rpm安裝包名稱是"softname-3.2.6-i386.rpm",按照上面的結(jié)構(gòu)就是领炫,軟件名稱"softname"偶垮,軟件版本"3.2.6",適用的平臺(tái)"i386"(x86構(gòu)架)驹吮;dpkg包的名稱只是后綴不一樣针史,其他命名規(guī)則差不多,例如"sogoupinyin_2.0.0.0068_amd64.deb"碟狞,軟件名稱"sogoupinyin"啄枕,版本"2.0.0.0068","amd64"適合64位系統(tǒng)平臺(tái)族沃,".deb"這是dpkg的安裝包频祝。

然而,不論哪種軟件管理機(jī)制封裝的安裝包脆淹,都存在相關(guān)軟件的依存問(wèn)題常空,比如使用rpm或者dpkg安裝軟件A,A需要系統(tǒng)中已經(jīng)安裝好軟件B和C盖溺,否則A將不能正常安裝漓糙,這就帶來(lái)一個(gè)非常麻煩的問(wèn)題,如果A依賴的程序不止兩個(gè)烘嘱,而是幾百個(gè)昆禽,這幾百個(gè)軟件又存在其它的軟件依賴,手動(dòng)安裝這些依存程序顯然非常麻煩蝇庭。

所以醉鳖,yum和apt-get這兩種安裝方式孕育而生。yum是RPM軟件管理機(jī)制的在線安裝方式哮内,apt-get是DPKG軟件管理機(jī)制的在線安裝方式盗棵,它們都可以自動(dòng)解決軟件的依存問(wèn)題,當(dāng)某個(gè)需要安裝的軟件存在依存軟件時(shí),安裝程序會(huì)自動(dòng)搜索指定的網(wǎng)絡(luò)服務(wù)器中是否存在這些依存的軟件纹因,如果存在喷屋,會(huì)將這些軟件一次性全部安裝好。

0×2.使用rpm命令安裝卸載軟件

這一部分實(shí)驗(yàn)是在"CentOS7"中完成的辐怕,軟件的安裝需要root權(quán)限(或?qū)?dāng)前用戶添加到/etc/sudoers文件中逼蒙,然后使用sudo),我已經(jīng)將CentOS的ISO載入光驅(qū)寄疏,在光盤的"Packages"目錄中有很多rpm的安裝包是牢,本例使用其中的"zsh-5.0.2-14.el7.x86_64.rpm"這個(gè)安裝包來(lái)演示rpm安裝命令:

#為了使普通用戶暫時(shí)獲得root權(quán)限,首先將當(dāng)前用戶添加到sudoers文件中陕截,切換到root用戶編輯sudoers文件
[qingos@qingsword.com~]$ su root
[root@qingsword.com~]# gedit /etc/sudoers
#找到下面的位置驳棱,在root下方添加一條,當(dāng)前用戶名是qingos农曲,后面的和root相同即可社搅,保存退出
## Allow root to run any commands anywhere
root    ALL=(ALL)   ALL
qingos  ALL=(ALL)   ALL

#返回普通權(quán)限后就可以使用sudo命令了,CentOS7中默認(rèn)光盤的掛載位置是在"/run/media/當(dāng)前登陸用戶用戶名/光盤名稱"乳规,進(jìn)入光盤目錄中的"Packages"目錄
[root@qingsword.com~]# exit
[qingos@qingsword.com~]$  cd /run/media/qingos/CentOS\ 7\ x86_64/Packages/

#使用rpm命令安裝形葬,因?yàn)檫@個(gè)軟件包沒(méi)有其他的依存關(guān)系,安裝成功暮的,參數(shù)"i"是安裝的意思笙以,"v"是顯示詳細(xì)信息,"h"是顯示進(jìn)度條冻辩。
[qingos@qingsword.com Packages]$ sudo rpm -ivh zsh-5.0.2-14.el7.x86_64.rpm
準(zhǔn)備中...             ###### [100%]
正在升級(jí)/安裝...
1:zsh-5.0.2-14.el7   ###### [100%]

#查看軟件都被釋放到了系統(tǒng)的哪些位置
[qingos@qingsword.com Packages]$  rpm -qpl zsh-5.0.2-14.el7.x86_64.rpm

使用rpm卸載軟件:

#與安裝相同猖腕,只需要將參數(shù)i替換成e就能卸載軟件,所不同的是恨闪,卸載軟件只需要輸入軟件的名稱
[qingos@qingsword.com Packages]$ sudo rpm -evh zsh

0×3.使用yum安裝卸載軟件

前面已經(jīng)介紹過(guò)倘感,rpm和dpkg在安裝軟件包的時(shí)候存在依存屬性的問(wèn)題,這個(gè)問(wèn)題是軟件的發(fā)布者在封裝這個(gè)軟件的時(shí)候的系統(tǒng)環(huán)境所決定的咙咽,yum在線安裝很好的解決了這個(gè)問(wèn)題老玛。

首先復(fù)現(xiàn)一下rpm依存問(wèn)題,使用rpm安裝CentOS7系統(tǒng)盤中的"yp-tools-2.14-3.el7.x86_64.rpm"會(huì)遇到依存屬性的問(wèn)題钧敞,然后使用yum在線安裝的功能自動(dòng)搜索并安裝這些依存軟件:

#如果使用rpm安裝一個(gè)有依存屬性的軟件就會(huì)出現(xiàn)下面這樣的提示
[qingos@qingsword.com Packages]$ sudo rpm -ivh yp-tools-2.14-3.el7.x86_64.rpm
錯(cuò)誤:依賴檢測(cè)失斃:
ypbind 被 yp-tools-2.14-3.el7.x86_64 需要

#確保網(wǎng)絡(luò)暢通,使用yum來(lái)安裝
[qingos@qingsword.com~]$ sudo yum install yp-tools

#顯示需要下載的依存軟件包數(shù)量和大小
安裝  1 軟件包 (+1 依賴軟件包)
總下載量:141 k
安裝大欣缦怼:299 k
Is this ok [y/d/N]: y  #輸入y回車就開(kāi)始下載安裝了

如果想要?jiǎng)h除這個(gè)軟件余素,只需要將install替換成remove豹休,對(duì)應(yīng)的依賴包也會(huì)被自動(dòng)刪除:

[qingos@qingsword.com~]$ sudo yum remove yp-tools
移除  1 軟件包 (+1 依賴軟件包)
安裝大写独ァ:299 k
是否繼續(xù)?[y/N]:y

yum自動(dòng)升級(jí)系統(tǒng)中所有軟件到最新版本:

#更新系統(tǒng)所有軟件包
[qingos@qingsword.com~]$ sudo yum update
安裝    2 軟件包 (+1 依賴軟件包)
升級(jí)  184 軟件包
總計(jì):369 M
總下載量:354 M
Is this ok [y/d/N]: y

#單獨(dú)更新一個(gè)軟件,只需要在上面的命令后面加上需要更新的軟件名稱即可
[qingos@qingsword.com~]$ sudo yum update openssh-server

列出是否已安裝某個(gè)軟件包以及這個(gè)軟件包是否有可用更新:

[qingos@qingsword.com~]$ yum list openssh-server

#如果這個(gè)軟件包已經(jīng)安裝凤巨,會(huì)在輸出列表的最后一列的關(guān)鍵字前添加一個(gè)"@"符號(hào)视乐,如果沒(méi)有"@"符號(hào),說(shuō)明這個(gè)軟件包未安裝敢茁,如果已經(jīng)安裝的軟件包有更新佑淀,會(huì)在下面出現(xiàn)一個(gè)新版本的文件名,并且最后一列提示"updates"
Installed Packages
openssh-server.x86_64    6.4p1-8.el7    @anaconda/7.0
Available Packages
openssh-server.x86_64    6.6.1p1-33.el7_3    updates

列出云服務(wù)器上是否存在某個(gè)軟件包:

[qingos@qingsword.com~]$ yum search openssh-server
N/S matched: openssh-server
openssh-server.x86_64
openssh-server-sysvinit.x86_64
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末彰檬,一起剝皮案震驚了整個(gè)濱河市伸刃,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌逢倍,老刑警劉巖捧颅,帶你破解...
    沈念sama閱讀 216,843評(píng)論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異较雕,居然都是意外死亡碉哑,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,538評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門亮蒋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)扣典,“玉大人,你說(shuō)我怎么就攤上這事慎玖≈猓” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 163,187評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵凄吏,是天一觀的道長(zhǎng)远舅。 經(jīng)常有香客問(wèn)我,道長(zhǎng)痕钢,這世上最難降的妖魔是什么图柏? 我笑而不...
    開(kāi)封第一講書人閱讀 58,264評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮任连,結(jié)果婚禮上蚤吹,老公的妹妹穿的比我還像新娘。我一直安慰自己随抠,他們只是感情好裁着,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,289評(píng)論 6 390
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著拱她,像睡著了一般二驰。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上秉沼,一...
    開(kāi)封第一講書人閱讀 51,231評(píng)論 1 299
  • 那天桶雀,我揣著相機(jī)與錄音矿酵,去河邊找鬼。 笑死矗积,一個(gè)胖子當(dāng)著我的面吹牛全肮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播棘捣,決...
    沈念sama閱讀 40,116評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼辜腺,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了乍恐?” 一聲冷哼從身側(cè)響起评疗,我...
    開(kāi)封第一講書人閱讀 38,945評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎茵烈,沒(méi)想到半個(gè)月后壤巷,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,367評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瞧毙,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,581評(píng)論 2 333
  • 正文 我和宋清朗相戀三年胧华,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片宙彪。...
    茶點(diǎn)故事閱讀 39,754評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡矩动,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出释漆,到底是詐尸還是另有隱情悲没,我是刑警寧澤,帶...
    沈念sama閱讀 35,458評(píng)論 5 344
  • 正文 年R本政府宣布男图,位于F島的核電站示姿,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏逊笆。R本人自食惡果不足惜栈戳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,068評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望难裆。 院中可真熱鬧子檀,春花似錦、人聲如沸乃戈。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,692評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)症虑。三九已至缩歪,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間谍憔,已是汗流浹背匪蝙。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 32,842評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工苟翻, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人骗污。 一個(gè)月前我還...
    沈念sama閱讀 47,797評(píng)論 2 369
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像沈条,于是被迫代替她去往敵國(guó)和親需忿。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,654評(píng)論 2 354

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