天天看點

ubuntu下包管理工具apt,dpkg常用指令

apt-cache search # ------(package 搜尋包)

apt-cache show #------(package 擷取包的相關資訊,如說明、大小、版本等)

apt-get install # ------(package 安裝包)

apt-get install # -----(package --reinstall 重新安裝包)

apt-get -f install # -----(強制安裝, "-f = --fix-missing"當是修複安裝吧...)

apt-get remove #-----(package 删除包)

apt-get remove --purge # ------(package 删除包,包括删除配置檔案等)

apt-get autoremove --purge # ----(package 删除包及其依賴的軟體包+配置檔案等(隻對6.10有效,強烈推薦))

apt-get update #------更新源

apt-get upgrade #------更新已安裝的包

apt-get dist-upgrade # ---------更新系統

apt-get dselect-upgrade #------使用 dselect 更新

apt-cache depends #-------(package 了解使用依賴)

apt-cache rdepends # ------(package 了解某個具體的依賴,當是檢視該包被哪些包依賴吧...)

apt-get build-dep # ------(package 安裝相關的編譯環境)

apt-get source #------(package 下載下傳該包的源代碼)

apt-get clean && apt-get autoclean # --------清理下載下傳檔案的存檔 && 隻清理過時的包

apt-get check #-------檢查是否有損壞的依賴

dpkg -S filename -----查找filename屬于哪個軟體包

apt-file search filename -----查找filename屬于哪個軟體包

apt-file list packagename -----列出軟體包的内容

apt-file update --更新apt-file的資料庫

dpkg --info "軟體包名" --列出軟體包解包後的包名稱.

dpkg -l --列出目前系統中所有的包.可以和參數less一起使用在分屏檢視. (類似于rpm -qa)

dpkg -l |grep -i "軟體包名" --檢視系統中與"軟體包名"相關聯的包.

dpkg -s 查詢已安裝的包的詳細資訊.

dpkg -L 查詢系統中已安裝的軟體包所安裝的位置. (類似于rpm -ql)

dpkg -S 查詢系統中某個檔案屬于哪個軟體包. (類似于rpm -qf)

dpkg -I 查詢deb包的詳細資訊,在一個軟體包下載下傳到本地之後看看用不用安裝(看一下呗).

dpkg -i 手動安裝軟體包(這個指令并不能解決軟體包之前的依賴性問題),如果在安裝某一個軟體包的時候遇到了軟體依賴的問題,可以用apt-get -f install在解決信賴性這個問題.

dpkg -r 解除安裝軟體包.不是完全的解除安裝,它的配置檔案還存在.

dpkg -P 全部解除安裝(但是還是不能解決軟體包的依賴性的問題)

dpkg -reconfigure 重新配置

apt-get install

下載下傳軟體包,以及所有依賴的包,同時進行包的安裝或更新。如果某個包被設定了 hold (停止标志,就會被擱在一邊(即不會被更新)。更多 hold 細節請看下面。

apt-get remove [--purge]

移除 以及任何依賴這個包的其它包。

--purge 指明這個包應該被完全清除 (purged) ,更多資訊請看 dpkg -P。

apt-get update

更新來自 Debian 鏡像的包清單,如果你想安裝當天的任何軟體,至少每天運作一次,而且每次修改了

/etc/apt/sources.list 後,必須執行。

apt-get upgrade [-u]

升 級所有已經安裝的包為最新可用版本。不會安裝新的或移除老的包。如果一個包改變了依賴關系而需要安裝一個新的包,那麼它将不會被更新,而是标志為 hold。apt-get update 不會更新被标志為 hold 的包 (這個也就是 hold 的意思)。請看下文如何手動設定包為 hold。我建議同時使用 '-u' 選項,因為這樣你就能看到哪些包将會被更新。

apt-get dist-upgrade [-u]

和 apt-get upgrade 類似,除了 dist-upgrade 會安裝和移除包來滿足依賴關系。是以具有一定的危險性。

apt-cache search

在軟體包名稱和描述中,搜尋包含xxx的軟體包。

apt-cache show

顯示某個軟體包的完整的描述。

apt-cache showpkg

顯示軟體包更多細節,以及和其它包的關系。

dselect

console-apt

aptitude

gnome-apt

APT 的幾個圖形前端(其中一些在使用前得先安裝)。這裡 dselect 無疑是最強大的,也是最古老,最難駕馭。

普通 Dpkg 用法

dpkg -i

安裝一個 Debian 封包件,如你手動下載下傳的檔案。

dpkg -c

列出 的内容。

dpkg -I

從 中提取包資訊。

dpkg -r

移除一個已安裝的包。

dpkg -P

完全清除一個已安裝的包。和 remove 不同的是,remove 隻是删掉資料和可執行檔案,purge 另外還删除所有的配制檔案。

dpkg -L

列出 安裝的所有檔案清單。同時請看 dpkg -c 來檢查一個 .deb 檔案的内容。

dpkg -s

顯示已安裝包的資訊。同時請看 apt-cache 顯示 Debian 存檔中的包資訊,以及 dpkg -I 來顯示從一個 .deb 檔案中提取的包資訊。

dpkg-reconfigure

重 新配制一個已經安裝的包,如果它使用的是 debconf (debconf 為包安裝提供了一個統一的配制界面)。你能夠重新配制 debconf 它本身,如你想改變它的前端或提問的優先權。例如,重新配制 debconf,使用一個 dialog 前端,簡單運作:

dpkg-reconfigure --frontend=dialog debconf (如果你安裝時選錯了,這裡可以改回來喲:)

echo " hold" | dpkg --set-selections

設定 的狀态為 hlod (指令行方式)

dpkg --get-selections ""

取的 的目前狀态 (指令行方式)

支援通配符,如:

Debian:~# dpkg --get-selections *wine*

libwine hold

libwine-alsa hold

libwine-arts hold

libwine-dev hold

libwine-nas hold

libwine-print hold

libwine-twain hold

wine hold

wine+ hold

wine-doc hold

wine-utils hold

dpkg -S

在包資料庫中查找 ,并告訴你哪個包包含了這個檔案。(注:查找的是事先已經安裝的包)

繼續閱讀