日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

ubuntu安裝/查看已安裝包的方法

 絲廣里 2021-04-11

自己折騰ubuntu安裝包來著, 發(fā)現(xiàn)一篇文章非常實用, 將apt-get和dpkg等命令的參數(shù)講解非常全面. 于是轉(zhuǎn)載過來. 中文的比英文的幫助看著還是順手一點. 原文鏈接: http://www.cnblogs.com/forward/archive/2012/01/10/2318483.html

說明:由于圖形化界面方法(如Add/Remove… 和Synaptic Package Manageer)比較簡單,所以這里主要總結(jié)在終端通過命令行方式進行的軟件包安裝、卸載和刪除的方法。

要檢查特定的包,比如firefox是否安裝了,使用這個命令:

  1. dpkg -s firefox

兩種方法

apt list --installed

dpkg -l    

查找某款軟件

dpkg -l | grep xxx

你同樣可以通過grep來過濾割到更精確的包。比如,我想要使用dpkg命令查看系統(tǒng)中安裝的gcc包:

  1. dpkg --get-selections | grep gcc

示例輸出:

  1. gcc install

一、Ubuntu中軟件安裝方法

1、APT方式

(1)普通安裝:apt-get install softname1 softname2 …;

(2)修復(fù)安裝:apt-get -f install softname1 softname2… ;(-f Atemp to correct broken dependencies)

(3)重新安裝:apt-get –reinstall install softname1 softname2…;

2、Dpkg方式

(1)普通安裝:dpkg -i package_name.deb

3、源碼安裝(.tar、tar.gz、tar.bz2、tar.Z)

首先解壓縮源碼壓縮包然后通過tar命令來完成

a.解xx.tar.gz:tar zxf xx.tar.gz 
b.解xx.tar.Z:tar zxf xx.tar.Z 
c.解xx.tgz:tar zxf xx.tgz 
d.解xx.bz2:bunzip2 xx.bz2 
e.解xx.tar:tar xf xx.tar

然后進入到解壓出的目錄中,建議先讀一下README之類的說明文件,因為此時不同源代碼包或者預(yù)編譯包可能存在差異,然后建議使用ls -F –color或者ls -F命令(實際上我的只需要 l 命令即可)查看一下可執(zhí)行文件,可執(zhí)行文件會以*號的尾部標(biāo)志。

一般依次執(zhí)行

  1. ./configure
  2. make
  3. sudo make install

即可完成安裝。

二、Ubuntu中軟件包的卸載方法

1、APT方式

(1)移除式卸載:apt-get remove softname1 softname2 …;(移除軟件包,當(dāng)包尾部有+時,意為安裝)

(2)清除式卸載 :apt-get –purge remove softname1 softname2…;(同時清除配置)

(3)清除式卸載:apt-get purge sofname1 softname2…;(同上,也清除配置文件)

2、Dpkg方式

(1)移除式卸載:dpkg -r pkg1 pkg2 …;

(2)清除式卸載:dpkg -P pkg1 pkg2…;

三、Ubuntu中軟件包的查詢方法

簡潔版:

  1. 查看系統(tǒng)中軟件包nano的狀態(tài), 支持模糊查詢:(l的意思是list)
  2. $ dpkg -l nano
  3. 我個人經(jīng)常用上面這句話看狀態(tài)。
  4. 查看軟件包nano的詳細(xì)信息:
  5. $ dpkg -s nano
  6. 查詢系統(tǒng)中屬于nano的文件:
  7. $ dpkg-query -L nano

后面是比較長的原文: 
Dpkg 使用文本文件來作為數(shù)據(jù)庫.通稱在 /var/lib/dpkg 目錄下. 通稱在 status 文件中存儲軟件狀態(tài),和控制信息. 在 info/ 目錄下備份控制文件, 并在其下的 .list 文件中記錄安裝文件清單, 其下的 .mdasums 保存文件的 MD5 編碼.

體驗使用數(shù)據(jù)庫的時刻到了:

$ dpkg -l Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-===========-================-======================================== ii aalib1 1.4p5-28 ascii art library - transitional package ii adduser 3.85 Add and remove users and groups ii alien .63 install non-native packages with dpkg ... ...
  • 1

每條記錄對應(yīng)一個軟件包, 注意每條記錄的第一, 二, 三個字符. 這就是軟件包的狀態(tài)標(biāo)識, 后邊依此是軟件包名稱, 版本號, 和簡單描述.

第一字符為期望值,它包括: 
u 狀態(tài)未知,這意味著軟件包未安裝,并且用戶也未發(fā)出安裝請求. 
i 用戶請求安裝軟件包. 
r 用戶請求卸載軟件包. 
p 用戶請求清除軟件包. 
h 用戶請求保持軟件包版本鎖定. 
第二列,是軟件包的當(dāng)前狀態(tài).此列包括軟件包的六種狀態(tài). 
n 軟件包未安裝. 
i 軟件包安裝并完成配置. 
c 軟件包以前安裝過,現(xiàn)在刪除了,但是它的配置文件還留在系統(tǒng)中. 
u 軟件包被解包,但還未配置. 
f 試圖配置軟件包,但是失敗了. 
h 軟件包安裝,但是但是沒有成功. 
第三列標(biāo)識錯誤狀態(tài),可以總結(jié)為四種狀態(tài). 第一種狀態(tài)標(biāo)識沒有問題,為空. 其它三種符號則標(biāo)識相應(yīng)問題. 
h 軟件包被強制保持,因為有其它軟件包依賴需求,無法升級. 
r 軟件包被破壞,可能需要重新安裝才能正常使用(包括刪除). 
x 軟包件被破壞,并且被強制保持. 
也可以以統(tǒng)配符模式進行模糊查詢, 比如我要查找以nano字符開始的所有軟件包:

$ dpkg -l nano* Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-==============-==============-============================================ ii nano 1.3.10-2 free Pico clone with some new features pn nano-tiny <none> (no description available) un nanoblogger <none> (no description available) 

以上狀態(tài)說明: 系統(tǒng)中安裝了 nano 版本為 1.3.10-2 ;安裝過 nano-tiny , 后來又清除了; 從未安裝過nanoblogger .

四 其他應(yīng)用總結(jié)

  1. apt-cache search # ------(package 搜索包)
  2. apt-cache show #------(package 獲取包的相關(guān)信息,如說明、大小、版本等)
  3. apt-get install # ------(package 安裝包)
  4. apt-get install # -----(package --reinstall 重新安裝包)
  5. apt-get -f install # -----(強制安裝, '-f = --fix-missing'當(dāng)是修復(fù)安裝吧...)
  6. apt-get remove #-----(package 刪除包)
  7. apt-get remove --purge # ------(package 刪除包,包括刪除配置文件等)
  8. apt-get autoremove --purge # ----(package 刪除包及其依賴的軟件包+配置文件等(只對6.10有效,強烈推薦))
  9. apt-get update #------更新源
  10. apt-get upgrade #------更新已安裝的包
  11. apt-get dist-upgrade # ---------升級系統(tǒng)
  12. apt-get dselect-upgrade #------使用 dselect 升級
  13. apt-cache depends #-------(package 了解使用依賴)
  14. apt-cache rdepends # ------(package 了解某個具體的依賴,當(dāng)是查看該包被哪些包依賴吧...)
  15. apt-get build-dep # ------(package 安裝相關(guān)的編譯環(huán)境)
  16. apt-get source #------(package 下載該包的源代碼)
  17. apt-get clean && apt-get autoclean # --------清理下載文件的存檔 && 只清理過時的包
  18. apt-get check #-------檢查是否有損壞的依賴
  19. dpkg -S filename -----查找filename屬于哪個軟件包
  20. apt-file search filename -----查找filename屬于哪個軟件包
  21. apt-file list packagename -----列出軟件包的內(nèi)容
  22. apt-file update --更新apt-file的數(shù)據(jù)庫
  23. dpkg --info '軟件包名' --列出軟件包解包后的包名稱.
  24. dpkg -l --列出當(dāng)前系統(tǒng)中所有的包.可以和參數(shù)less一起使用在分屏查看. (類似于rpm -qa)
  25. dpkg -l |grep -i '軟件包名' --查看系統(tǒng)中與'軟件包名'相關(guān)聯(lián)的包.
  26. dpkg -s 查詢已安裝的包的詳細(xì)信息.
  27. dpkg -L 查詢系統(tǒng)中已安裝的軟件包所安裝的位置. (類似于rpm -ql)
  28. dpkg -S 查詢系統(tǒng)中某個文件屬于哪個軟件包. (類似于rpm -qf)
  29. dpkg -I 查詢deb包的詳細(xì)信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄).
  30. dpkg -i 手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題.
  31. dpkg -r 卸載軟件包.不是完全的卸載,它的配置文件還存在.
  32. dpkg -P 全部卸載(但是還是不能解決軟件包的依賴性的問題)
  33. dpkg -reconfigure 重新配置
  34. apt-get install
  35. 下載軟件包,以及所有依賴的包,同時進行包的安裝或升級。如果某個包被設(shè)置了 hold (停止標(biāo)志,就會被擱在一邊(即不會被升級)。更多 hold 細(xì)節(jié)請看下面。
  36. apt-get remove [--purge]
  37. 移除 以及任何依賴這個包的其它包。
  38. --purge 指明這個包應(yīng)該被完全清除 (purged) ,更多信息請看 dpkg -P。
  39. apt-get update
  40. 升級來自 Debian 鏡像的包列表,如果你想安裝當(dāng)天的任何軟件,至少每天運行一次,而且每次修改了
  41. /etc/apt/sources.list 後,必須執(zhí)行。
  42. apt-get upgrade [-u]
  43. 升 級所有已經(jīng)安裝的包為最新可用版本。不會安裝新的或移除老的包。如果一個包改變了依賴關(guān)系而需要安裝一個新的包,那么它將不會被升級,而是標(biāo)志為 hold。apt-get update 不會升級被標(biāo)志為 hold 的包 (這個也就是 hold 的意思)。請看下文如何手動設(shè)置包為 hold。我建議同時使用 '-u' 選項,因為這樣你就能看到哪些包將會被升級。
  44. apt-get dist-upgrade [-u]
  45. 和 apt-get upgrade 類似,除了 dist-upgrade 會安裝和移除包來滿足依賴關(guān)系。因此具有一定的危險性。
  46. apt-cache search
  47. 在軟件包名稱和描述中,搜索包含xxx的軟件包。
  48. apt-cache show
  49. 顯示某個軟件包的完整的描述。
  50. apt-cache showpkg
  51. 顯示軟件包更多細(xì)節(jié),以及和其它包的關(guān)系。
  52. dselect
  53. console-apt
  54. aptitude
  55. gnome-apt
  56. APT 的幾個圖形前端(其中一些在使用前得先安裝)。這里 dselect 無疑是最強大的,也是最古老,最難駕馭。
  57. 普通 Dpkg 用法
  58. dpkg -i
  59. 安裝一個 Debian 包文件,如你手動下載的文件。
  60. dpkg -c
  61. 列出 的內(nèi)容。
  62. dpkg -I
  63. 從 中提取包信息。
  64. dpkg -r
  65. 移除一個已安裝的包。
  66. dpkg -P
  67. 完全清除一個已安裝的包。和 remove 不同的是,remove 只是刪掉數(shù)據(jù)和可執(zhí)行文件,purge 另外還刪除所有的配制文件。
  68. dpkg -L
  69. 列出 安裝的所有文件清單。同時請看 dpkg -c 來檢查一個 .deb 文件的內(nèi)容。
  70. dpkg -s
  71. 顯示已安裝包的信息。同時請看 apt-cache 顯示 Debian 存檔中的包信息,以及 dpkg -I 來顯示從一個 .deb 文件中提取的包信息。
  72. dpkg-reconfigure
  73. 重 新配制一個已經(jīng)安裝的包,如果它使用的是 debconf (debconf 為包安裝提供了一個統(tǒng)一的配制界面)。你能夠重新配制 debconf 它本身,如你想改變它的前端或提問的優(yōu)先權(quán)。例如,重新配制 debconf,使用一個 dialog 前端,簡單運行:
  74. dpkg-reconfigure --frontend=dialog debconf (如果你安裝時選錯了,這里可以改回來喲:)
  75. echo ' hold' | dpkg --set-selections
  76. 設(shè)置 的狀態(tài)為 hlod (命令行方式)
  77. dpkg --get-selections ''
  78. 取的 的當(dāng)前狀態(tài) (命令行方式)
  79. 支持通配符,如:
  80. Debian:~# dpkg --get-selections *wine*
  81. libwine hold
  82. libwine-alsa hold
  83. libwine-arts hold
  84. libwine-dev hold
  85. libwine-nas hold
  86. libwine-print hold
  87. libwine-twain hold
  88. wine hold
  89. wine+ hold
  90. wine-doc hold
  91. wine-utils hold
  92. dpkg -S
  93. 在包數(shù)據(jù)庫中查找 ,并告訴你哪個包包含了這個文件。(注:查找的是事先已經(jīng)安裝的包)

Debian的軟件包管理工具命令不完全列表


Debian系統(tǒng)中所有的包信息都在/var/lib/dpkg下.其中/var/lib/dpkg/info目錄中保存了各個軟件包的信息及管理文件.每個文件的作用如下: 
以 “.conffiles” 結(jié)尾的文件記錄軟件包的配置列表. 
以 “.list” 結(jié)尾的文件記錄了軟件包的文件列表,用戶可在文件當(dāng)中找到軟件包文件的具體安裝位置. 
以 “.md5sums” 結(jié)尾的文件記錄了md5信息,用來進行包的驗證的. 
以 “.config” 結(jié)尾的文件是軟件包的安裝配置角本. 
以 “.postinst” 角本是完成Debian包解開之后的配置工作,通常用來執(zhí)行所安裝軟件包相關(guān)的命令和服務(wù)的重新啟動. 
以 “.preinst” 角本在Debain解包之前運行,主要作用是是停止作用于即將升級的軟件包服務(wù)直到軟件包安裝或和升級完成. 
以 “.prerm” 腳本負(fù)責(zé)停止與軟件包關(guān)聯(lián)的daemon服務(wù),在刪除軟件包關(guān)聯(lián)文件之前執(zhí)行. 
以 “.postrm” 腳本負(fù)責(zé)修改軟件包鏈接或文件關(guān)聯(lián),或刪除由它創(chuàng)建的文件.

/var/lib/dpkg/available是軟件包的描述信息. 
包括當(dāng)前系統(tǒng)中所有使用的Debian安裝源中所有的軟件包,還包括當(dāng)前系統(tǒng)中已經(jīng)安裝和未安裝的軟件包.

1.dpkg包管理工具

dpkg -r 卸載軟件包.不是完全的卸載,它的配置文件還存在. 
dpkg –info “軟件包名” –列出軟件包解包后的包名稱. 
dpkg -l –列出當(dāng)前系統(tǒng)中所有的包.可以和參數(shù)less一起使用在分屏查看. 
dpkg -l |grep -i “軟件包名” –查看系統(tǒng)中與”軟件包名”相關(guān)聯(lián)的包. 
dpkg -s 查詢已安裝的包的詳細(xì)信息. dpkg -L 查詢系統(tǒng)中已安裝的軟件包所安裝的位置. 
dpkg -S 查詢系統(tǒng)中某個文件屬于哪個軟件包. 
dpkg -I 查詢deb包的詳細(xì)信息,在一個軟件包下載到本地之后看看用不用安裝(看一下唄). 
dpkg -i 手動安裝軟件包(這個命令并不能解決軟件包之前的依賴性問題),如果在安裝某一個軟件包的時候遇到了軟件依賴的問題,可以用apt-get -f install在解決信賴性這個問題. 
dpkg -reconfigure 重新配置 
dpkg -P 全部卸載(但是還是不能解決軟件包的依賴性的問題)

2. apt高級包管理工具

(1)GTK圖形的”synaptic”,這是APT的前端工具. 
(2)”aptitude”,這也是APT的前端工具. 
用APT管理工具進行包的管理,可以有以下幾種方法做源: 
(1)拿安裝盤做源,方法如下: 
apt-cdrom ident 掃描光盤的信息 
apt-cdrom add 添加光盤源 
(2)這也是最常用的方法就是把源添加到/etc/apt/source.list中,之后更新列apt-get update

APT管理工具常用命令

apt-cache 加上不同的子命令和參數(shù)的使用可以實現(xiàn)查找,顯示軟件,包信息及包信賴關(guān)系等功能. 
apt-cache stats 顯示當(dāng)前系統(tǒng)所有使用的Debain數(shù)據(jù)源的統(tǒng)計信息. 
apt-cache search +”包名”,可以查找相關(guān)的軟件包. 
apt-cache show +”包名”,可以顯示指定軟件包的詳細(xì)信息. 
apt-cache depends +”包名”,可以查找軟件包的依賴關(guān)系. 
apt-get upgrade 更新系統(tǒng)中所有的包到最新版 
apt-get install 安裝軟件包 
apt-get –reindtall install 重新安裝軟件包 
apt-get remove 卸載軟件包 
apt-get –purge remove 完全卸載軟件包 
apt-get clean 清除無用的軟件包 
在用命令apt-get install之前,是先將軟件包下載到/var/cache/apt/archives中,之后再進行安裝的.所以我們可以用apt-get clean清除/var/cache/apt/archives目錄中的軟件包.

源碼包安裝

apt-cache showsrc 查找看源碼包的文件信息(在下載之前) 
apt-get source 下載源碼包. 
apt-get build-dep +”包名” 構(gòu)建源碼包的編譯環(huán)境.

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多