archLinux下的套件管理程式-pacman

archLinux使用pacman這套套件管理程式,您可以想像它類似是Gentoo的emerge、Debian的apt-get、或是Fedora的yum。它能追縱安裝在Linux system上的程式套件,同時也擁有簡單的程式相依性簡查。pacman能夠連接上遠端ftp server並且自動更新本地端的程式套件資料庫。pacman的套件所使用的是gzipped tar格式(tar.gz)。

pacman指令格式如下:

pacman [operation] [options] [package] [package] …

一些常用指令我們概述如下:

#pacman -Sy

更新套件名單:這個指令會從遠端的repositories(一種ftp-based的套件更新站)下載並更新本機的套件資料。有關repositories的設定是在/etc/pacman.conf之中。

 

#pacman -Su; #pacman -Syu

套件升級:-Su這個參數會去比對本機所有的軟體套件並更新它們,以確保它們都是最新版狀態。但它並不會先更新套件名單,因為我們通常會加上-y這個參數,讓-Syu同時run。

 

#pacman -S foo

同步並安裝套件:-S會從repositories去同步並安裝foo這個套件,並且解決套件間相依問題。

 

#pacman -R foo

移除套件:-R會將foo這個套件自系統中移除。 關於foo這個套件的設定檔則會被存成.pacsave,如果不想留下任何設定檔,可再加上–nosave參數。

 

#pacman -Q

列出所有已安裝套件:-Q會將所有在系統上所安裝的套件名單列出。 

 

# pacman -Qi foo

列出特定套件資訊:-Qi會將foo這個套件的資訊列出。

 

#pacman -Ql foo

列出套件中所包含之檔案:-Ql會將foo這個套件中屬於它的檔案列出。

 

#pacman -Qo /path/foo

查詢檔案屬於哪個套件:-Qo能夠查詢/path/foo這個檔案是屬於哪個軟體套件以及版本訊息。

 

如果覺得pacman抓套件的速度過慢,可以試著經過proxy,設定方法可以在/etc/pacman.conf加入兩行proxy設定:

ProxyServer = your.proxy.server

ProxyPort = proxyport

但當我們使用中山大學proxy(ccproxy1.nsysu.edu.tw:3128)後,pacman會常常出現error,建議可再將/etc/pacman.conf這行的註解拿掉,讓pacman直接call wget來抓檔:

XferCommand = /usr/bin/wget –passive-ftp -c -O %o %u

其中XferCommand會再去call wget來抓檔,因此我們可以再改/etc/wgetrc,並加入這兩行:

http_proxy= http://your.proxy.server:yourPort/

ftp_proxy= http://your.proxy.server:yourPort/

 

想了解pacman更多的用法,請直接man pacman,或是參考archLinux的pacman說明網頁:

http://archlinux.org/pacman/

http://archlinux.org/pacman/pacman.8.html

 

這裡有archLinux中文網頁上對pacman的一些相關介紹:

http://cle.linux.org.tw/index.php?LinuxChineseHowto%2FArchLinux%2FPackage_Management%2FPacman

 

要查詢欲安裝套件在pacman中的安裝名稱,可至archLinux的網頁查詢:

http://www.archlinux.org/packages.php

About sssun

老研究生

Leave a Reply