pacman手册
文章目錄
- 內(nèi)容來源于網(wǎng)絡(luò)>>>[原帖地址](https://www.xdty.org/1347)
- archlinux pacman 命令
- pacman-optimize && sync
內(nèi)容來源于網(wǎng)絡(luò)>>>原帖地址
https://www.xdty.org/1347
archlinux pacman 命令
常用命令有:
pacman -Sy 僅同步源
pacman -Syu 同步源,并更新系統(tǒng)
pacman -Su –ignore foo 升級時(shí)不升級包foo
pacman -S abc 從本地?cái)?shù)據(jù)庫中得到abc的信息,下載安裝abc包
pacman -Sy abc 和源同步后安裝名為abc的包
pacman -Sd abc 忽略依賴性問題,安裝包abc
pacman -Sf abc 強(qiáng)制安裝包abc
pacman -Si abc 從數(shù)據(jù)庫中搜索包abc的信息
pacman -Ss abc 搜索有關(guān)abc信息的包
pacman -Sg abc 查詢abc這個(gè)包組包含的軟件包
pacman -Sw abc 下載包而不安裝它
pacman -R abc 刪除abc包
pacman -Rc abc 刪除abc包和依賴abc的包
pacman -Rsn abc 刪除包所有不需要的依賴包并刪除其配置文件
pacman -Rscn abc 刪除abc包所有不需要的依賴包和依賴abc的包并刪除其配置文件
pacman -Sc 清理/var/cache/pacman/pkg目錄下的舊包
pacman -Scc 清除所有下載的包和數(shù)據(jù)庫
pacman -Q 列出系統(tǒng)中所有的包
pacman -Q package 在本地包數(shù)據(jù)庫搜索(查詢)指定軟件包
pacman -Qi package 在本地包數(shù)據(jù)庫搜索(查詢)指定軟件包并列出相關(guān)信息
pacman -Q | wc -l 統(tǒng)計(jì)當(dāng)前系統(tǒng)中的包數(shù)量
pacman -Qdt 找出孤立包
pacman -Rns $(pacman -Qtdq) 刪除孤立軟件包(遞歸的,小心用)
pacman -U abc.pkg.tar.gz 安裝下載的abs包,或新編譯的本地abc包
pacman-optimize && sync 提高數(shù)據(jù)庫訪問速度
==== 提高pacman數(shù)據(jù)訪問 ====
pacman-optimize && sync
==== 使用wget ====
修改/etc/pacman.conf并在其中的[options]
XferCommand = /usr/bin/wget -c –passive-ftp -c %u
來自:http://www.douban.com/group/topic/17909752/
Pacman手冊
名稱
pacman – 軟件包管理器
句法
pacman <命令> [選項(xiàng)] [軟件包名稱]
描述
pacman是linux系統(tǒng)上的用于記錄安裝的軟件包信息的管理器。它的主要特點(diǎn)有:支持依賴、軟件包組、安裝卸載關(guān)聯(lián)以及與遠(yuǎn)程服務(wù)器同步信息然后更新系統(tǒng)。pacman的軟件包格式是.tar.gz的壓縮格式。
3.0.0版以來,pacman一直是linkman:libalpm(即”Arch Linux軟件包管理“函數(shù)庫)的前端。這個(gè)函數(shù)庫支持不同寫法的前端(例如,它支持圖形化前端)。
命令
-Q,–query 查詢
查詢軟件包數(shù)據(jù)庫。運(yùn)用這條命令你不僅可以查看已安裝軟件包以及所含文件的信息,還可以查看獨(dú)立軟件包的元信息(meta-information)(包括軟件包的依賴,沖突,安裝日期,創(chuàng)建日期,大小)。這條命令可已對本機(jī)的軟件包數(shù)據(jù)庫執(zhí)行,也可以對獨(dú)立的.tar.gz包執(zhí)行。具體參看下面的查詢選項(xiàng)。
-R, –remove 移除
從系統(tǒng)中移除某個(gè)軟件包。該命令也可以對軟件包組執(zhí)行,執(zhí)行后,軟件包組內(nèi)所有的軟件包都會(huì)被移除。屬于指定軟件包的文件會(huì)被刪除,而后軟件包數(shù)據(jù)庫會(huì)執(zhí)行更新。除非加上–nosave(不保存)選項(xiàng),移除軟件包的配置文件都會(huì)以.pacsave的后綴保存。具體參看下面的移除選項(xiàng)。
-S, –sync 同步
同步軟件包。軟件包是從frp服務(wù)器上直接下載安裝的,與之一同安裝的還有運(yùn)行軟件所需的所有依賴。例如,pacman -S qt 會(huì)下載并安裝qt以及qt的所有依賴。如果同一名稱的軟件包存在與不同的源中,可以指定源:pacman -S testing/qt。同樣也可以給定版本要求:pacman -S “bash>=3.2”(引號是必需的,否則設(shè)shell會(huì)將“>”理解為重定向)。
可以指定軟件包,也可以指定軟件包組。例如,如果gnome是一個(gè)已定義的軟件包組,那么執(zhí)行pacman -S gnome就會(huì)將gnome組中所有的軟件包安裝,當(dāng)然也會(huì)安裝這些軟件包的依賴。
pacman也可以處理一些具有相同或相近作用的軟件包。例如,執(zhí)行pacman -S foo,pacman首先會(huì)搜索名為foo的軟件包。如果沒有找到的話,pacman就會(huì)搜索一些具有相同或相近作用的軟件包。如果找到了具有相同或相近作用的軟件包,這些軟件包就會(huì)被安裝。
你也可以用pacman -Su來升級本機(jī)上所有陳舊的軟件包升級是這樣進(jìn)行的:pacman先將本機(jī)上的軟件包同遠(yuǎn)程服務(wù)器上的軟件包進(jìn)行版本對比。版本對比是按照如下規(guī)則進(jìn)行的:
字母順序:
1.0a<1.0alpha<1.0b<1.0beta<1.0p<1.0pre<1.0rc<1.0
數(shù)字順序:
1<1.0<1.1<1.1.1<1.2<2.0<3.0.0
-U, –update
升級軟件包,或安裝軟件包。可以給定一個(gè)URL網(wǎng)址,也可以給定一個(gè)文件路徑。升級的過程是一個(gè)“移除,然后安裝”的過程。想知道pacman如何處理配置文件,請查看處理配置文件
-V, –version 版本
顯示版本,然后退出。
-h, –help 幫助
顯示給定命令的句法。如果沒有給定命令,顯示的將是全部命令的句法。
通用選項(xiàng)
–asdeps [as dependency(作為依賴)]
模糊安裝軟件包;換句話說,就是假定該軟件包安裝的原因是由于依賴。在使用makepkg以及其他從源代碼編譯的工具時(shí),需要在編譯一個(gè)軟件包之前安裝該軟件包的依賴,這時(shí)候,這個(gè)命令選項(xiàng)就十分有用了。
–asexplicit
精確安裝軟件;換句話說,就是假定該軟件包安裝的原因是精確安裝。如果想把一個(gè)依賴標(biāo)記成精確安裝,使它不會(huì)在執(zhí)行帶–recursive(遞歸)的移除命令時(shí)刪除,這時(shí)候,這個(gè)命令選項(xiàng)就十分有用了。
-b, –dbpath <路徑> 指定另外的數(shù)據(jù)庫位置;默認(rèn)為/var/lib/pacman,路徑為絕對路徑。
-d, –nodeps 略過所有依賴關(guān)系檢查-
-f, –force 強(qiáng)制安裝,覆蓋存在沖突的文件(謹(jǐn)慎使用);
-r, –root <路徑> 指定其他的根路徑;用于向暫時(shí)掛載的其他系統(tǒng)根路徑安裝軟件。
-v, –verbose 輸出路徑,例如根路徑,配置文件,數(shù)據(jù)庫,緩存的路徑等。
–cachedir <dir> 指定其他緩存路徑;默認(rèn)為/var/cache/pacman/pkg,路徑為絕對路徑。–config <路徑> 指定另外的配置文件–logfile <路徑> 指定另外的日志文件–noconfirm 不詢問確認(rèn)–noprogressbar 下載文件時(shí)不顯示進(jìn)度條–noscriptlet 不執(zhí)行安裝腳本集(謹(jǐn)慎使用);查詢選項(xiàng)
-c, –changelog 查看某軟件包的更新日志
-d, –deps 列出所有作為依賴關(guān)系安裝的軟件包
-e, –explicit 列出所有單獨(dú)指定安裝的軟件包
-g, –groups 查看某軟件包組所屬的所有軟件包
-i, –info 查看軟件包信息(-ii 查看備份文件)
-l, –list 列出被查詢軟件包的內(nèi)容
-m, –foreign 列出沒有在同步數(shù)據(jù)庫時(shí)找到的已安裝軟件包
-o, –owns <文件> 查詢哪個(gè)軟件包擁有 <文件>
-p, –file <軟件包> 從某個(gè)軟件包而不是數(shù)據(jù)庫查詢
-q, –quiet 在查詢或搜索時(shí)顯示較少的信息
-s, –search 搜尋符合指定字符串的已安裝本地的軟件包
-t, –unrequired 列出所有不被其他軟件包要求的軟件包
-u, –upgrades 列出所有可升級的軟件包
-p,–file 在命令行標(biāo)記軟件包為文件,而不是數(shù)據(jù)庫信息條目,在與–info和–list搭配時(shí)有用。
移除選項(xiàng)
-c, –cascade 刪除軟件包及所有的依賴于此的軟件包
-k, –dbonly 只刪除數(shù)據(jù)庫記錄,不刪除文件
-n, –nosave 同時(shí)刪除配置文件
-s, –recursive 同時(shí)刪除(不會(huì)破壞其他軟件包的)依賴關(guān)系
(-ss·也包括單獨(dú)指定安裝的依賴關(guān)系)-u, –unneeded 同時(shí)刪除不需要的(且不會(huì)破壞其他軟件包的)依賴關(guān)系
同步選項(xiàng)
-c, –clean 從緩存目錄中刪除舊軟件包(-cc 清除所有)
-g, –groups 查看某軟件包組所屬的所有軟件包
-i, –info 查看軟件包信息
-l, –list <軟件倉庫> 查看在該軟件倉庫中的軟件包清單
-q, –quiet 在查詢或搜索時(shí)顯示較少的信息
-p, –print-uris 打印指定軟件包及依賴關(guān)系中的URI
-s, –search <regex表達(dá)式> 按照指定字符串查詢遠(yuǎn)端軟件倉庫
-u, –sysupgrade 升級所有過期軟件包
-w, –downloadonly 下載但不安裝/升級軟件包
-y, –refresh 從服務(wù)器下載新的軟件包數(shù)據(jù)庫
–needed 不重新安裝已經(jīng)為最新的軟件包–ignore <軟件包> 升級時(shí)忽略某個(gè)軟件包(可多次使用)–ignoregroup <軟件包組>升級時(shí)忽略某個(gè)軟件包組(可多次使用)配置文件處理
pacman同rpm在處理已標(biāo)記為備份的文件的邏輯上時(shí)是一樣。更新系統(tǒng)時(shí),pacman用3個(gè)md5檢測工具檢測標(biāo)記為備份的文件,以決定將要執(zhí)行的命令:一個(gè)檢測已安裝的原始文件,一個(gè)檢測將要安裝的新文件,一個(gè)檢測實(shí)際存在與文件系統(tǒng)上的當(dāng)前文件。對比這3個(gè)檢測的結(jié)果之后,會(huì)有如下情形:
x x x(順序依次為原始文件,當(dāng)前文件,新文件)
所有文件一致,所以覆蓋不會(huì)有什么影響。安裝軟件包。
x x y
當(dāng)前文件同原始文件相同,但是他們和新文件不同。由于用戶并沒有
修改文件,因此新文件可能包含最新的bug修正,所以安裝新文件。
x y x
新文件同原始文件相同,安裝新文件。
x y z
三個(gè)文件都不同。安裝新文件,但加上,pacnew的后綴,警示用戶。
用戶必須自己將必要的改變加入原始文件。
配置
查看linkman:pacman.conf[5]以獲得更多關(guān)于運(yùn)用pacman.conf
配置pacman的信息。
查看更多
linkman:pacman.conf[5]
linkman:makepkg[8]
linkman:libalpm[3]
登錄pacman網(wǎng)址(http://www.archlinux.org/pacman/)獲得pacman以及相關(guān)工具的最新信息。
總結(jié)
- 上一篇: 阿里云总线CSB的HTTP调用案例
- 下一篇: C# Linq 左外联