Ubuntu軟件管理
- Debian軟件包通常爲預編譯的二進制格式的擴展名“.deb”,類似rpm文件,因此安裝 快速,無需編譯軟件。包文件包括特定功能或軟件所必需的文件、元數據和指令
- dpkg:package manager for Debian,類似於rpm, dpkg是基於Debian的系統的包 管理器。可以安裝,刪除和構建軟件包,但無法自動下載和安裝軟件包或其依賴項
- APT:Advanced Packaging Tool,功能強大的軟件管理工具,甚至可升級整個Ubuntu 的系統,基於客戶/服務器架構
- APT工作原理:在服務器上先複製所有DEB包,然後用APT的分析工具genbasedir根據 每個DEB 包的包頭(Header)信息對所有的DEB包進行分析,並將該分析結果記錄在文 件夾base內的一個DEB 索引清單文件中,一旦APT 服務器內的DEB有所變動,要使用 genbasedir產生新的DEB索引清單。客戶端在進行安裝或升級時先要查詢DEB索引清單, 從而獲知所有具有依賴關係的軟件包,並一同下載到客戶端以便安裝。當客戶端需要安 裝、升級或刪除某個軟件包時,客戶端計算機取得DEB索引清單壓縮文件後,會將其解 壓置放於 /var/cache/apt/,而客戶端使用apt-get install或apt-get upgrade命令的時 候,就會將這個文件夾內的數據和客戶端計算機內的DEB數據庫比對,知道哪些DEB已 安裝、未安裝或是可以升級的
dpkg
是Debian Linux系統用來安裝、創建和管理軟件包的實用工具。
常見用法
dpkg -i package.deb #安裝包
dpkg -r package #刪除包,不自動卸載依賴於它的
dpkg -P package #刪除包(包括配置文件)
dpkg -L package #列出該包中所包含的文件,類似rpm –ql
dpkg -l package #顯示該包的版本,類似rpm –qi
pkg -l #列出當前已安裝的包,類似rpm -qa
dpkg -S keyword #搜索所屬的包內容,類似rpm –qf
dpkg -s package #列出該包的狀態,包括詳細信息,類似rpm –qi
dpkg -c package.deb #列出deb包的內容,類似rpm –qpl
dpkg --configure package #配置包
dpkg --unpack package.deb #解開deb包的內容
dpkg示例:
列出系統上安裝的所有軟件包
#dpkg -l
列出軟件包安裝的文件
#dpkg -L bash
查看/bin/bash來自於哪個軟件包
#dpkg -S /bin/bash
安裝本地的 .deb 文件
#dpkg -i /mnt/cdrom/pool/main/z/zip/zip_3.0-11build1_amd64.deb
卸載軟件包
#dpkg -r zip
注意:一般建議不要使用dpkg卸載軟件包。因爲刪除包時,其它依賴它的包不 會卸載,並且可能無法再正常運行
apt/apt-get
apt-get命令是Debian Linux發行版中的APT軟件包管理工具。所有基於Debian的發行都使用這個包管理系統。deb包可以把一個應用的文件包在一起,大體就如同Windows上的安裝文件
apt與apt-get命令對比
apt 命令 被取代的命令 命令的功能
apt install apt-get install 安裝軟件包
apt remove apt-get remove 移除軟件包
apt purge apt-get purge 移除軟件包及配置文件
apt update apt-get update 刷新存儲庫索引
apt upgrade apt-get upgrade 升級所有可升級的軟件包
apt autoremove apt-get autoremove 自動刪除不需要的包
apt full-upgrade apt-get dist-upgrade 在升級軟件包時自動處理依賴關係
apt search apt-cache search 搜索應用程序
apt show apt-cache show 顯示安裝細節
apt 特有的命令
apt list 列出包含條件的包(已安裝,可升級等)
apt edit-sources 編輯源列表
apt命令操作(如安裝和刪除軟件包)記錄在/var/log/dpkg.log日誌文件中
apt示例
- 安裝包:
apt install tree zip - 刪除包:
apt remove tree zip
說明:apt remove中添加--purge選項會刪除包配置文件,謹慎使用 - 更新包索引:
apt update - 升級包:要升級系統,請首先更新軟件包索引,再升級
apt upgrade