)
Linux命令-yumRPM 包管理工具 命令簡介 語法格式?? 常用選項與子命令全局選項 實戰示例1. 軟件包安裝2. 搜索與查詢3. 更新系統與軟件包4. 卸載軟件包5. 倉庫管理6. yum 歷史管理7. 依賴分析8. 高級用法?? 危險操作與注意事項 相關命令 總結快速參考yumYellowdog Updater Modified是RHEL/CentOS 系統的包管理工具用于自動解決依賴關系并安裝 RPM 軟件包。在 CentOS 8/RHEL 8 中已被dnf替代但存量系統仍廣泛使用。 命令簡介yum基于 RPM 包管理從配置的軟件倉庫repository中下載并安裝軟件包自動處理依賴關系是 CentOS/RHEL 日常運維的核心命令。版本說明RHEL 7/CentOS 7 使用yumRHEL 8/CentOS 8 使用dnfDandified YUM。dnf語法與yum高度兼容大部分系統上yum命令實際上是dnf的別名。核心概念概念說明倉庫(repo)軟件包的遠程或本地存儲位置RPM 包.rpm格式的二進制軟件包依賴解析自動計算并安裝所需的依賴包yum 緩存本地緩存的倉庫元數據和 RPM 包 語法格式yum[選項]子命令[包名...]# 安裝軟件包yuminstall包名# 搜索軟件包yum search 關鍵字# 更新系統/軟件包yum update[包名]# 刪除軟件包yum remove 包名?? 常用選項與子命令子命令說明install安裝一個或多個軟件包remove/erase卸載軟件包update更新已安裝的軟件包upgrade更新軟件包會處理過時依賴search在包名和描述中搜索關鍵字info顯示軟件包詳細信息list列出可用或已安裝的軟件包provides查找提供指定文件的軟件包clean清理 yum 緩存makecache生成/更新緩存repolist列出已配置的倉庫history查看/管理 yum 操作歷史check-update檢查可用更新reinstall重新安裝軟件包downgrade降級軟件包deplist顯示軟件包的依賴關系全局選項選項說明-y對所有確認提示自動回答 yes-q安靜模式減少輸出-v詳細模式--nogpgcheck跳過 GPG 簽名驗證--enablerepo倉庫臨時啟用指定倉庫--disablerepo倉庫臨時禁用指定倉庫--downloadonly僅下載不安裝--downloaddir目錄指定下載目錄 實戰示例1. 軟件包安裝# 安裝單個軟件包yuminstallnginx# 安裝多個軟件包批量安裝 LNMPyuminstallnginx mysql-server php-fpm php-mysql# 自動確認安裝非交互模式適合腳本yuminstall-ygitvimwgetcurl# 安裝本地 RPM 文件自動處理依賴yum localinstall ./custom-package.rpm# 從指定倉庫安裝yum--enablerepoepelinstallhtop# 安裝開發工具組yum groupinstallDevelopment Tools2. 搜索與查詢# 搜索包含 python 的軟件包yum search python3# 查看軟件包詳細信息yum info nginx# 列出所有已安裝的軟件包yum list installed# 列出所有可用未安裝的軟件包yum list available# 列出所有軟件包已安裝 可用yum list all# 查看某個包的已安裝版本yum list installed|grepkernel# 查找哪個包提供了 /usr/bin/ssh 文件yum provides /usr/bin/ssh# 按通配符搜索yum listphp-*3. 更新系統與軟件包# 更新所有軟件包包括內核yum update# 僅更新安全補丁yum update--security# 更新單個軟件包yum update nginx# 檢查有哪些可用更新yum check-update# 僅下載更新但不安裝便于離線部署yum update--downloadonly--downloaddir/tmp/updates# 更新到指定版本鎖定版本yum update-to nginx-1.20.14. 卸載軟件包# 卸載單個軟件包yum remove nginx# 卸載多個軟件包yum remove httpd php php-mysql# 自動確認卸載yum remove-ydocker# 卸載軟件包及其未被其他包使用的依賴yum autoremove nginx5. 倉庫管理# 列出所有已配置的倉庫yum repolist# 列出所有倉庫含禁用的yum repolist all# 查看倉庫詳細信息yum repoinfo# 生成/更新倉庫元數據緩存yum makecache# 清理所有緩存文件yum clean all# 僅清理軟件包緩存yum clean packages# 僅清理元數據緩存yum clean metadata6. yum 歷史管理# 查看 yum 操作歷史yumhistory# 查看指定歷史條目的詳細信息yumhistoryinfo10# 撤銷某次操作回滾到指定事務之前yumhistoryundo10# 重做某次操作yumhistoryredo10# 列出涉及某軟件包的歷史操作yumhistorylist nginx7. 依賴分析# 查看軟件包的依賴關系yum deplist nginx# 查看哪些包依賴指定軟件包yum deplist--reversenginx# 顯示包的已安裝依賴和缺失依賴yum check-dependencies8. 高級用法# 安裝 EPEL 倉庫Extra Packages for Enterprise Linuxyuminstallepel-release# 查看特定倉庫中的軟件包yum--disablerepo*--enablerepoepel list available# 僅下載不安裝用于離線環境部署yuminstall--downloadonly--downloaddir/tmp/rpmsdocker# 忽略特定依賴安裝危險僅限特殊場景yuminstall--skip-broken package-name# 從特定源安裝排除某些倉庫yuminstall--disablerepobase--enablerepoepelhtop?? 危險操作與注意事項??危險警告以下操作可能導致系統不穩定或軟件包損壞。# 危險強制刪除內核可能導致系統無法啟動yum remove kernel# 回滾方案保留至少兩個內核版本# 安裝回內核yum install kernel# 危險跳過依賴安裝yuminstall--skip-broken broken-package# 回滾方案記錄安裝的包使用 yum history undo 回滾# 危險在無網絡環境中執行 updateyum update# 回滾方案使用 yum history undo 撤銷# 建議先執行 yum check-update 預覽變更安全操作建議生產環境更新前先yum check-update預覽變更關鍵服務器禁止自動更新手動審查后分批執行使用yum history追蹤每次變更以便快速回滾配置yum-cron僅下載更新不自動安裝CentOS 7 EOL 后遷移到 Rocky Linux 或 AlmaLinux 相關命令命令關系與說明dnfyum 的下一代替代品RHEL 8 默認rpm底層 RPM 包管理器直接操作 RPM 文件yumdownloader僅下載 RPM 包不安裝yum-utils 提供yum-config-manager管理 yum 倉庫配置yum-utils 提供yum-cronyum 自動更新定時任務repoquery查詢倉庫中的軟件包信息yum-utils 提供createrepo創建自定義 yum 倉庫aptDebian/Ubuntu 系統的包管理工具 總結yum是 CentOS/RHEL 生態的核心包管理工具。掌握install、search、update、remove、history五個子命令即可覆蓋日常運維 90% 的場景。對于新版系統RHEL 8/CentOS 8建議學習dnf使其平滑過渡。運維建議始終在變更前查看yum history了解歷史操作在升級前使用yum check-update預覽并通過yum history undo在出問題時快速回滾。