一、RPM
RPM(Red Hat Package Manager)是一個用于管理 Red Hat 系列 Linux 發行版(如 RHEL、CentOS、Fedora)軟件包的工具。RPM 允許用戶以統一的格式來安裝、卸載、升級和查詢軟件包。它是 .rpm 文件的主要工具,后綴名為 .rpm 的軟件包是使用 RPM 系統構建的。
1.查詢已安裝軟件包
(1)格式
rpm ?-q[子選項] 包名關鍵字
(2)選項
a | 已安裝的所有軟件包 | |
i | 查看指定軟件的詳細信息 | |
l | 查詢軟件包的安裝目錄 | |
f | 查詢文件或目錄屬于哪個程序包安裝生成的 | |
p | 尚未安裝的包做查詢操作 |
(3)示例
#查看所有已安裝rpm包 rpm -qa #查看所有已安裝rpm包中有沒有mysql rpm -qa | grep mysql #查看已安裝的mysql-libs-5.1.73-7.el6.x86_64包的信息 rpm -qi mysql-libs-5.1.73-7.el6.x86_64 #查看mysql-libs-5.1.73-7.el6.x86_64包中文件安裝位置 rpm -ql mysql-libs-5.1.73-7.el6.x86_64 #查看/bin/ls和根目錄“/”是由哪些包安裝的 rpm -qf /bin/ls rpm -qf / #查看安裝光盤中mysql-server-5.1.73-7.el6.x86_64.rpm的信息 rpm -qip /media/CentOS_6.8_Final/Packages/mysql-server-5.1.73-7.el6.x86_64.rpm #查看安裝光盤中mysql-5.1.73-7.el6.x86_64.rpm的內容 rpm -qlp 5 |
2.安裝軟件包
(1)格式
rpm -i[子選項] 包名 |
(2)選項
v | 顯示安裝過程中的詳細信息 |
h | 以 # 顯示安裝進度 |
-U | 升級包(如沒安裝就安裝) |
-F | 升級包(沒安裝放棄安裝) |
--test | 測試能否被安裝 ?try run |
--nodeps | 忽略包之間的依賴關系 |
(3)示例
rpm -ivh zsh-4.3.11-4.el6.centos.2.x86_64.rpm |
3.驗證軟件包
如果懷疑某個軟件包被修改或破壞了,可以使用 rpm 的驗證功能來檢查文件的完整性。
(1)格式
rpm -V package_name |
(2)示例
rpm -V httpd |
4.更新和升級軟件包
(1)格式
rpm update rpm -U package.rpm |
(2)示例
#升級指定的軟件包 rpm -U httpd-2.4.7-1.el7.x86_64.rpm |
5.生成軟件包依賴關系
(1)格式
rpm -qR package_name |
(2)示例
rpm -qR httpd |
6.卸載和刪除軟件包
(1)格式
rpm -e package_name |
(2)示例
rpm -e httpd |
7.清理緩存
(1)格式
yum clean all |
二、YUM
YUM(Yellowdog Updater, Modified)是基于 RPM 包管理器的一個前端工具,廣泛應用于 Red Hat 系列 Linux 發行版(如 RHEL、CentOS、Fedora)。它簡化了軟件包的安裝、升級、刪除以及依賴管理等任務。YUM 提供了一個方便的方式來管理 RPM 包,而不需要手動處理依賴關系。
1.查詢已安裝軟件包
(1)格式
#列出所有已安裝的軟件包 yum list installed #通過包名來查看是否安裝了特定的軟件包 yum list installed package_name #?查找可用的軟件包 yum search |
(2)示例
yum list installed httpd yum search httpd |
2.查詢可用的軟件包
(1)格式
yum list available |
3.查詢軟件包詳細信息
查看軟件包的詳細信息(版本、描述、大小等)。
(1)格式
yum info package_name |
(2)示例
yum info httpd |
4.查詢包的依賴關系
(1)格式
yum deplist package_name |
(2)示例
yum deplist httpd |
5.安裝軟件包
(1)格式
sudo yum install package_name |
(2)示例
sudo yum install httpd |
6.安裝本地 RPM 文件
如果你有一個本地的 .rpm 文件,可以使用 yum localinstall 安裝。
(1)格式
sudo yum localinstall package.rpm |
(2)示例
sudo yum localinstall httpd-2.4.6-90.el7.centos.x86_64.rpm |
7.更新軟件包
(1)格式
sudo yum update #指定更新 sudo yum update package_name |
(2)示例
sudo yum update httpd |
8.卸載軟件包
(1)格式
sudo yum remove package_name |
(2)示例
sudo yum remove httpd |
9.清理緩存
(1)格式
#清理所有 YUM 緩存 sudo yum clean all #清理已下載的包文件 yum clean packages #清理元數據緩存 yum clean metadata |
10.查看 YUM 倉庫
(1)格式
#顯示已啟用的倉庫列表 yum repolist #查看倉庫詳細信息 yum repoinfo |
11.YUM倉庫
YUM 會從預配置的倉庫中獲取軟件包和元數據。
倉庫通常通過配置文件 /etc/yum.repos.d/ 中的 .repo 文件來指定。
每個倉庫包含以下內容:
name:倉庫名稱。
baseurl:倉庫的 URL 地址。
enabled:啟用該倉庫(1 表示啟用,0 表示禁用)。
12.YUM 配置文件
(1)主配置文件
/etc/yum.conf,用于設置 YUM 的全局選項。
(2)倉庫配置文件
/etc/yum.repos.d/*.repo,每個?.repo?文件配置一個或多個倉庫。
13.自動解決依賴問題
YUM 會自動解決依賴問題并安裝所需的軟件包。如果在安裝時出現缺失依賴,YUM 會嘗試下載并安裝相關的依賴包。