Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

CentOS RPM 套件管理完整操作指南:安裝、升級、驗證、查詢、資料庫重建

編輯:關於 Linux

RPM (RPM Package Manager) 是紅帽系 Linux 的核心套件管理工具,雖然高層工具 YUM/DNF 更常用,但掌握 RPM 底層操作對於離線安裝、套件驗證、資料庫修復、自訂套件打包等場景至關重要。本文系統整理 RPM 核心指令、選項組合、實戰場景。

RPM 套件結構

RPM 封裝包含:二進制程式、設定檔、說明文件、函式庫、標頭檔、相依資訊、安裝/移除腳本。

安裝與升級核心指令

指令用途常用組合
rpm -ivh pkg.rpm安裝 (詳細進度條)標準安裝
rpm -Uvh pkg.rpm升級/安裝 (有舊版則升級,無則安裝)通用部署
rpm -Fvh pkg.rpm僅升級 (無舊版則跳過)修補更新
rpm -ivh --nodeps pkg.rpm忽略相依關係強制安裝測試/離線環境
rpm -ivh --test pkg.rpm模擬安裝 (不實際寫入)預檢相依
rpm -ivh --replacepkgs pkg.rpm重新安裝同版本 (修復檔案遺失)修復損壞
rpm -ivh --force pkg.rpm強制安裝 (覆蓋檔案、忽略相依、降級)極端修復

移除套件

rpm -e pkg_name           # 正常移除
rpm -e --nodeps pkg_name  # 忽略相依強制移除
rpm -e --test pkg_name    # 模擬移除

查詢與驗證 (核心技能)

套件查詢

指令功能
rpm -qa列出所有已安裝套件
rpm -q pkg_name確認套件是否安裝
rpm -qi pkg_name顯示套件詳細資訊
rpm -ql pkg_name列出套件安裝的所有檔案
rpm -qc pkg_name列出設定檔
rpm -qd pkg_name列出說明文件
rpm -qf /path/to/file查詢檔案屬於哪個套件
rpm -qp pkg.rpm查詢未安裝 .rpm 檔案資訊
rpm -qR pkg_name查詢套件相依需求
rpm -q --scripts pkg_name查看安裝/移除腳本內容

套件驗證 (GPG 簽章與完整性)

# 匯入廠商公鑰 (一次性)
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

# 驗證單一套件簽章與完整性
rpm -K pkg.rpm
# 或
rpm --checksig pkg.rpm

# 驗證已安裝套件檔案完整性
rpm -V pkg_name
# 輸出代碼: S=大小異常 M=模式異常 5=MD5異常 D=裝置異常 L=符號連結異常 U=擁有者異常 G=群組異常 T=時間異常 P=能力異常

RPM 資料庫維護

# 重建資料庫索引 (損壞修復)
rpm --rebuilddb

# 初始化資料庫 (極端情況)
rpm --initdb

實戰場景範例

場景 1:離線環境安裝含相依套件

# 1. 線上環境下載套件及所有相依
yumdownloader --resolve pkg_name

# 2. 複製所有 .rpm 到離線機器
# 3. 批次安裝
rpm -Uvh *.rpm

場景 2:查詢某指令由哪個套件提供

rpm -qf $(which nginx)
# 或未安裝時
yum provides */nginx

場景 3:驗證系統關鍵檔案是否被竄改

rpm -Va 2>/dev/null | grep -E '^.{9}  /(etc|bin|sbin|usr/bin|usr/sbin)/'

場景 4:自訂套件打包 (spec 檔基礎)

# 目錄結構
~/rpmbuild/
├── BUILD/
├── RPMS/
├── SOURCES/     # 原始碼 tarball
├── SPECS/       # .spec 檔案
├── SRPMS/

# 編譯
rpmbuild -ba ~/rpmbuild/SPECS/mypkg.spec

RPM vs YUM/DNF 選擇指南

場景推薦工具
日常安裝/更新/移除 (有網路)YUM/DNF
離線安裝單一 .rpmRPM
查詢檔案歸屬/套件內容RPM
驗證套件簽章/檔案完整性RPM
資料庫修復/重建RPM
自訂套件打包RPM (rpmbuild)

上一頁 1 2 3 下一頁 共 3 頁

Copyright © Windows教程網 All Rights Reserved