5 種 Linux 安裝包管理工具中文手冊!抓緊看,別再說不會了,丟人....
介紹常見 Linux 操作系統(tǒng)的安裝包管理工具,主要介紹其使用命令!
包管理系統(tǒng)除了安裝軟件外,它還提供了工具來更新已經(jīng)安裝的包。包存儲庫有助于確保你的系統(tǒng)中使用的代碼是經(jīng)過審查的,并且軟件的安裝版本已經(jīng)得到了開發(fā)人員和包維護人員的認可。
dpkg
Ubuntu、Debian
dpkg 命令是 Debian Linux 系統(tǒng)用來安裝、創(chuàng)建和管理軟件包的實用工具。
命令行使用
#?dpkg(選項)(參數(shù))
$?dpkg?--help
Usage:?dpkg?[<option>?...]?<command>
#?選項
-i:安裝軟件包
-r:刪除軟件包
-P:刪除軟件包的同時刪除其配置文件
-L:顯示于軟件包關聯(lián)的文件
-l:顯示已安裝軟件包列表
--unpack:解開軟件包
-c:顯示軟件包內(nèi)文件列表
--confiugre:配置軟件包
#?參數(shù)
Deb軟件包:指定要操作的.deb軟件包
示例演示說明
#?安裝包
$?dpkg?-i?package.deb
#?刪除包
$?dpkg?-r?package
#?刪除包(包括配置文件)
$?dpkg?-P?package
#?列出與該包關聯(lián)的文件
$?dpkg?-L?package
#?顯示該包的版本
$?dpkg?-l?package
#?解開deb包的內(nèi)容
$?dpkg?--unpack?package.deb
#?搜索所屬的包內(nèi)容
$?dpkg?-S?keyword
#?列出當前已安裝的包
$?dpkg?-l
#?列出deb包的內(nèi)容
$?dpkg?-c?package.deb
#?配置包
$?dpkg?--configure?package
#?列出已安裝軟件包
$?sudo?dpkg-query?-l
$?sudo?dpkg-query?-l?|?less
$?sudo?dpkg-query?-l?|?grep?tmux
apt
Ubuntu、Debian
apt-get 命令是 Debian Linux 發(fā)行版中的 APT 軟件包管理工具。所有基于 Debian 的發(fā)行都使用這個包管理系統(tǒng)。deb 包可以把一個應用的文件包在一起,大體就如同 Windows 上的安裝文件。
命令行使用
#?apt-get(選項)(參數(shù))
$?apt?--help
Usage:?apt?[options]?command
#?選項
-c:指定配置文件
#?參數(shù)
管理指令:對APT軟件包的管理操作
軟件包:指定要操縱的軟件包
示例演示說明
#?更新所有已安裝的軟件包
$?apt-get?upgrade
#?將系統(tǒng)升級到新版本
$?apt-get?dist-upgrade
#?更新
$?apt-get?update
#?安裝一個新軟件包
$?apt-get?install?packagename
#?卸載一個已安裝的軟件包(保留配置文件)
$?apt-get?remove?packagename
#?卸載一個已安裝的軟件包(刪除配置文件)
$?apt-get?–purge?remove?packagename
#?來刪除你已經(jīng)刪掉的軟件
$?apt-get?autoclean?apt
#?會把安裝的軟件的備份也刪除
$?apt-get?clean
#?列出已安裝軟件包
$?sudo?apt?list?--installed
$?sudo?apt?list?--installed?|?less
$?sudo?apt?list?--installed?|?grep?tmux
rpm
RHEL、CentOS
rpm 命令是 RPM 軟件包的管理工具。rpm 原本是 Red Hat Linux 發(fā)行版專門用來管理 Linux 各項套件的程序,由于它遵循 GPL 規(guī)則且功能強大方便,因而廣受歡迎。逐漸受到其他發(fā)行版的采用。RPM 套件管理方式的出現(xiàn),讓 Linux 易于安裝,升級,間接提升了 Linux 的適用度。
命令行使用
#?rpm(選項)(參數(shù))
$?rpm?--help
Usage:?rpm?[OPTION...]
#?選項
-a:查詢所有套件
-c:只列出組態(tài)配置文件,本參數(shù)需配合"-l"參數(shù)使用
-d:只列出文本文件,本參數(shù)需配合"-l"參數(shù)使用
-e<套件檔>或--erase<套件檔>:刪除指定的套件
-f<文件>+:查詢擁有指定文件的套件
-h或--hash:套件安裝時列出標記
-i:顯示套件的相關信息
-i<套件檔>或--install<套件檔>:安裝指定的套件檔
-l:顯示套件的文件列表
-p<套件檔>+:查詢指定的RPM套件檔
-q:使用詢問模式,當遇到任何問題時,rpm指令會先詢問用戶
-R:顯示套件的關聯(lián)性信息
-s:顯示文件狀態(tài),本參數(shù)需配合"-l"參數(shù)使用
-U<套件檔>或--upgrade<套件檔>:升級指定的套件檔
-v:顯示指令執(zhí)行過程
-vv:詳細顯示指令執(zhí)行過程,便于排錯
#?參數(shù)
軟件包:指定要操縱的rpm軟件包
示例演示說明
#?安裝
$?rpm?-ivh?your-package.rpm
#?強制安裝
$?rpm?--force?-ivh?your-package.rpm
#?卸載
$?rpm?-e?proftpd-1.2.8
#?列出所有安裝過的包
$?rpm?-qa
$?rpm?-qa?|?grep?sql
#?rpm包中的文件安裝到那里
$?rpm?-ql?***.rpm
#?一個沒有安裝過的軟件包
$?rpm?-qlp?***.rpm
#?一個已經(jīng)安裝過的軟件包
$?rpm?-ql?***.rpm
#?某個程序是哪個軟件包安裝
$?rpm?-qf?`which?程序名`???#?返回軟件包的全名
$?rpm?-qif?`which?程序名`??#?返回軟件包的有關信息
$?rpm?-qlf?`which?程序名`??#?返回軟件包的文件列表
yum
CentOS6、CentOS7
yum 命令是在 Fedora 和 RedHat 以及 SUSE 中基于 rpm 的軟件包管理器,它可以使系統(tǒng)管理人員交互和自動化地更新與管理 RPM 軟件包,能夠從指定的服務器自動下載 RPM 包并且安裝,可以自動處理依賴性關系,并且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。
命令行使用
#?yum(選項)(參數(shù))
$?yum?--help
Loaded?plugins:?fastestmirror,?langpacks
Usage:?yum?[options]?COMMAND
#?選項
-h:顯示幫助信息;
-y:對所有的提問都回答“yes”;
-c:指定配置文件;
-q:安靜模式;
-v:詳細模式;
-d:設置調(diào)試等級(0-10);
-e:設置錯誤等級(0-10);
-R:設置yum處理一個命令的最大等待時間;
-C:完全從緩存中運行,而不去下載或者更新任何頭文件。
#?參數(shù)
install:安裝rpm軟件包;
update:更新rpm軟件包;
check-update:檢查是否有可用的更新rpm軟件包;
remove:刪除指定的rpm軟件包;
list:顯示軟件包的信息;
search:檢查軟件包的信息;
info:顯示指定的rpm軟件包的描述信息和概要信息;
clean:清理yum過期的緩存;
shell:進入yum的shell提示符;
resolvedep:顯示rpm軟件包的依賴關系;
localinstall:安裝本地的rpm軟件包;
localupdate:顯示本地rpm軟件包進行更新;
deplist:顯示rpm軟件包的所有依賴關系。
示例演示說明
#?安裝
$?yum?install?????????????#?全部安裝
$?yum?install?package1????#?安裝指定的安裝包package1
$?yum?groupinsall?group1??#?安裝程序組group1
#?更新和升級
$?yum?update??????????????#?全部更新
$?yum?update?package1?????#?更新指定程序包package1
$?yum?check-update????????#?檢查可更新的程序
$?yum?upgrade?package1????#?升級指定程序包package1
$?yum?groupupdate?group1??#?升級程序組group1
#?查找顯示
$?yum?list?installed?|?grep?mysql
$?yum?list?installed?mysql*
$?yum?info?package1?????#?顯示安裝包信息package1
$?yum?list??????????????#?顯示所有已經(jīng)安裝和可以安裝的程序包
$?yum?list?package1?????#?顯示指定程序包安裝情況package1
$?yum?groupinfo?group1??#?顯示程序組group1信息
#?刪除程序
$?yum?remove/erase?package1??#?刪除程序包package1
$?yum?groupremove?group1?????#?刪除程序組group1
$?yum?deplist?package1???????#?查看程序package1依賴情況
#?清除緩存
$?yum?clean?packages????#?清除緩存目錄下的軟件包
$?yum?clean?headers?????#?清除緩存目錄下的?headers
$?yum?clean?oldheaders??#?清除緩存目錄下舊的?headers
dnf
RHEL8、CentOS8
DNF 使用 libsolv 進行依賴解析,由 SUSE 開發(fā)和維護,旨在提高性能。Yum 主要是用 Python 編寫的,它有自己的應對依賴解析的方法。它的 API 沒有完整的文檔,它的擴展系統(tǒng)只允許 Python 插件。Yum 是 RPM 的前端工具,它管理依賴關系和資源庫,然后使用 RPM 來安裝、下載和刪除包。
由于 Yum 中許多長期存在的問題仍未得到解決,因此 Yum 包管理器已被 DNF 包管理器取代。這些問題包括性能差、內(nèi)存占用過多、依賴解析速度變慢等。
安裝 DNF 包管理器
#?依賴
$?yum?install?-y?epel-release
#?安裝
$?yum?install?-y?dnf
#?檢查
$?dnf?–version
常用命令介紹
#?安裝軟件包
$?dnf?install?nano
#?升級軟件包
$?dnf?update?systemd
#?升級所有系統(tǒng)軟件包
$?dnf?update
$?dnf?upgrade
#?檢查系統(tǒng)軟件包的更新
$?dnf?check-update
#?刪除軟件包
$?dnf?remove?nano
$?dnf?erase?nano
#?刪除無用孤立的軟件包
$?dnf?autoremove
#?刪除緩存的無用軟件包
$?dnf?clean?all
#?查看系統(tǒng)中可用的DNF軟件庫
$?dnf?repolist
#?查看系統(tǒng)中可用和不可用的所有的DNF軟件庫
$?dnf?repolist?all
#?列出所有RPM包
$?dnf?list
#?列出所有安裝了的RPM包
$?dnf?list?installed
#?列出所有可供安裝的RPM包
$?dnf?list?available
#?搜索軟件庫中的RPM包
$?dnf?search?nano
#?查找某一文件的提供者
$?dnf?provides?/bin/bash
#?查看軟件包詳情
$?dnf?info?nano
#?查看所有的軟件包組
$?dnf?grouplist
#?安裝一個軟件包組
$?dnf?groupinstall?'Educational?Software'
#?升級一個軟件包組中的軟件包
$?dnf?groupupdate?'Educational?Software'
#?刪除一個軟件包組
$?dnf?groupremove?'Educational?Software'
#?重新安裝特定軟件包
$?dnf?reinstall?nano
#?回滾某個特定軟件的版本
$?dnf?downgrade?acpid
#?查看DNF命令的執(zhí)行歷史
$?dnf?history
#?查看所有的DNF命令及其用途
$?dnf?help
#?獲取有關某條命令的使用幫助
$?dnf?help?clean
作者: Escape 鏈接: escapelife.site/posts/74caf2e7.html
