Apt 命令解说(apt-get update、apt-cache search package、apt-get install package、apt-get remove )
前些天發(fā)現(xiàn)了一個(gè)巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享一下給大家。點(diǎn)擊跳轉(zhuǎn)到教程。
?
高級(jí)打包工具(英語(yǔ):Advanced Packaging Tools,縮寫為APT)是Debian及其派生發(fā)行版的軟件包管理器。APT可以自動(dòng)下載,配置,安裝二進(jìn)制或者源代碼格式的軟件包,因此簡(jiǎn)化了Unix系統(tǒng)上管理軟件的過(guò)程。APT最早被設(shè)計(jì)成dpkg的前端,用來(lái)處理deb格式的軟件包?,F(xiàn)在經(jīng)過(guò)APT-RPM組織修改,APT已經(jīng)可以安裝在支持RPM的系統(tǒng)管理RPM包。
構(gòu)成
APT由以下的幾個(gè)主要的命令構(gòu)成:
- apt-get
- apt-cache
- apt-file
在Debian系統(tǒng)中,APT建構(gòu)于dpkg之上。
安裝源
APT的軟件安裝來(lái)源在Debian安裝的時(shí)候即可進(jìn)行初始設(shè)置,除了Debian官方的網(wǎng)絡(luò)安裝來(lái)源之外,也可以使用Debian的安裝光盤,甚至可以從非官方的安裝來(lái)源中下載非官方的軟件。APT同時(shí)也可以從一些安裝來(lái)源中下載源代碼軟件,并且自行編譯、安裝。
依賴關(guān)系處理
APT會(huì)從每一個(gè)安裝源下載一個(gè)軟件包的列表。這個(gè)列表中有這個(gè)安裝源所包含的可用軟件包的信息。在可能的情況下,APT會(huì)安裝最新的軟件包,被安裝的軟件包所依賴的其他軟件包也會(huì)被安裝,建議安裝的軟件包則會(huì)在屏幕中顯示但是不會(huì)被安裝。不過(guò)在有一些情況下APT由于依賴關(guān)系不能安裝軟件包,例如:這個(gè)軟件包和系統(tǒng)中的其他軟件包沖突,或者這個(gè)軟件包依賴的軟件包在任何安裝源中均不存在或沒(méi)有要求的版本。在這種情況下,APT會(huì)返回錯(cuò)誤信息并且中止,用戶需要自行解決依賴問(wèn)題。
軟件包更新方式
Debian系統(tǒng)的一大特色即為“永不停機(jī)”,事實(shí)上,APT達(dá)到了這一點(diǎn)。在軟件被升級(jí)的時(shí)候,它仍然可以繼續(xù)服務(wù)。APT可以智能地從安裝來(lái)源下載最新版本的軟件并且安裝,而無(wú)須在安裝后重新引導(dǎo)電腦(除了更新Linux內(nèi)核之外)。所有的配置都可以得到保留,升級(jí)軟件不再是一個(gè)棘手的問(wèn)題。
發(fā)行版升級(jí)
APT最使人稱道的特點(diǎn)在于可以從一個(gè)Debian發(fā)行版升級(jí)到新的Debian發(fā)行版,例如從woody升級(jí)到sarge。APT可以升級(jí)絕大部分滿足依賴關(guān)系的軟件,但是也可能要?jiǎng)h除,或添加新的軟件以滿足依賴關(guān)系。
前端
SynapticAPT擁有不少的前端程序:
| 名稱 | 運(yùn)行界面 | 最新版本 |
| aptitude | 字符終端 | 0.2.15.9-2 |
| Synaptic | 圖形界面 | 0.75.13 |
| Gnome-APT | 圖形界面 | 0.4.7-1.2 |
| wajig | 兼容 | 2.0.25 |
示例
搜索
在終端機(jī)里輸入:
- apt-cache search <package>
這樣系統(tǒng)會(huì)列出與<package>名稱相匹配的包。
安裝
在終端機(jī)里輸入:
- apt-get install <package>
這樣系統(tǒng)會(huì)自動(dòng)下載<package>以及所有的依存包,同時(shí)進(jìn)行包的安裝。
移除
在終端機(jī)里輸入:
- apt-get remove [--purge] <package>
這樣系統(tǒng)會(huì)自動(dòng)移除<package>以及任何依此存包的其它包。 --purge指明包應(yīng)被完全清除。
升級(jí)
在終端機(jī)里輸入:
- apt-get update
這樣系統(tǒng)會(huì)自動(dòng)由映射點(diǎn)更新包列表,如果想安裝最新包,必須先運(yùn)行一次。每次修改了 /etc/apt/sources.list后,也必須運(yùn)行一次。
在終端機(jī)里輸入:
- apt-get upgrade [-u]
這樣系統(tǒng)會(huì)自動(dòng)將所有已經(jīng)安裝在系統(tǒng)內(nèi)的包升級(jí)為最新版本。如果一個(gè)包改變了依存關(guān)系,而需要安裝一個(gè)新的包時(shí),它將不會(huì)被升級(jí),而是標(biāo)識(shí)成hold。如果某個(gè)包被設(shè)置hold標(biāo)號(hào),就不會(huì)被升級(jí)。
在終端機(jī)里輸入:
- apt-get dist-upgrade [-u]
和apt-get upgrade類似,dist-upgrade會(huì)安裝和移除包來(lái)滿足依存關(guān)系,因此具有一定的危險(xiǎn)性。
彩蛋
在終端輸入apt-get -h會(huì)在末尾出現(xiàn)“本APT具有超級(jí)牛力(This APT has super cow power)。
在終端輸入apt-get moo會(huì)在屏幕上顯示一頭牛。
(__) (oo) /------\/ / | || * /\---/\ ~~ ~~..."Have you mooed today?"...
與apt-get相似的一個(gè)叫做aptitude的程序在aptitude -h的末尾加上了“這個(gè)aptitude沒(méi)有超級(jí)牛力”
在后面加上moo(即輸入aptitude moo),并且分別加上選項(xiàng)“-v”,“-vv”,“-vvv”,“-vvvv”,“-vvvvv”,“-vvvvvv”(即輸入aptitude -v moo;輸入aptitude -vv moo;等等),則會(huì)有如下輸出:
$ aptitude moo 本程序中沒(méi)有復(fù)活節(jié)彩蛋。 $ aptitude -v moo 本程序中確實(shí)沒(méi)有復(fù)活節(jié)彩蛋。 $ aptitude -vv moo 我不是已經(jīng)告訴您本程序中沒(méi)有復(fù)活節(jié)彩蛋了嗎? $ aptitude -vvv moo 停下來(lái)! $ aptitude -vvvv moo 好吧,好吧,如果我給您復(fù)活節(jié)彩蛋,您會(huì)停手嗎? $ aptitude -vvvvv moo 好吧,您贏了。/----\-------/ \/ \/|-----------------/ --------\---------------------------------------------- $ aptitude -vvvvvv moo 這是什么?這當(dāng)然是一只大象被一條蛇吞吃了。而apt系列的另一個(gè)名為"apt-build"的軟件包也具有相似的功能:
$ apt-build moo (__) ~ (oo) /_____\/___// /\ / /~ / * // ___/ *----/\/ \/ /~ ~ ..."Have you danced today? Discow!"... (意為:今天你跳舞了嗎?迪斯可!)軟件編寫者特地將Disco(迪斯可)一詞改為"Discow",以體現(xiàn)"Cow"(奶牛)之意。
?
轉(zhuǎn)自**百科:
?
https://zh.wikipedia.org/wiki/高級(jí)包裝工具
?
總結(jié)
以上是生活随笔為你收集整理的Apt 命令解说(apt-get update、apt-cache search package、apt-get install package、apt-get remove )的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。