Yum(Yellowdog Updater, Modified)是 RHEL/CentOS/Fedora 系統的高階套件管理器,自動解決相依性、支援多倉庫、提供豐富的查詢與交易操作。本文將所有常用功能分類整理為速查表,適合貼在工作站或收藏備查。

一、輔助工具安裝
yum install yum-fastestmirror # 自動選擇最快鏡像
yum install yumex # 圖形化介面
二、查詢與顯示
| 用途 | 指令 |
| 關鍵字搜尋套件 | yum search keyword |
| 顯示套件詳細資訊 | yum info package |
| 列出所有可用/已安裝套件 | yum list / yum list installed |
| 查詢特定套件安裝狀態 | yum list package |
| 列出倉庫所有套件 | yum list all |
| 顯示套件群組資訊 | yum groupinfo group |
| 查看套件相依關係 | yum deplist package |
| 查詢檔案屬於哪個套件 | yum provides /path/to/file |
| 查看套件提供的功能 | yum provides nginx |
三、安裝
| 用途 | 指令 |
| 安裝單一套件 | yum install package |
| 安裝本地 RPM 檔 | yum localinstall file.rpm |
| 安裝套件群組 | yum groupinstall group |
| 全部安裝(慎用) | yum install * |
四、更新
| 用途 | 指令 |
| 檢查可更新套件 | yum check-update |
| 更新所有套件 | yum update |
| 更新特定套件 | yum update package |
| 排除特定套件更新 | yum --exclude=kernel* update |
| 升級本地 RPM | yum localupdate file.rpm |
| 升級套件群組 | yum groupupdate group |
五、移除
| 用途 | 指令 |
| 移除套件(保留設定檔) | yum remove package |
| 徹底清除(含設定檔) | yum erase package |
| 移除套件群組 | yum groupremove group |
六、快取管理
| 用途 | 指令 |
| 清除套件快取 | yum clean packages |
| 清除中繼資料快取 | yum clean headers |
| 清除舊中繼資料 | yum clean oldheaders |
| 清除所有快取 | yum clean all |
七、倉庫啟用/停用(單次交易)
| 用途 | 指令 |
| 臨時啟用 EPEL 倉庫安裝 | yum --enablerepo=epel install rsnapshot |
| 臨時停用 EPEL 倉庫 | yum --disablerepo=epel install package |
八、進階技巧
- 查看交易歷史:
yum history / yum history info <id> / yum history undo <id>
- 下載不安裝:
yum install --downloadonly --downloaddir=/tmp package
- 查看倉庫優先級:
yum repolist -v
- 修復損毀交易:
yum-complete-transaction(需安裝 yum-utils)
九、DNF 時代備註
Fedora 22+、RHEL 8+、CentOS 8+ 已以 dnf 取代 yum(yum 為 dnf 符號連結)。指令語法 99% 相容,新增模組化倉庫(dnf module)、更快的相依解析器與更佳的記憶體管理。習慣 yum 的管理員可無痛遷移。
收藏此表,套件管理不再查手冊,指令信手拈來。