Fedora RPM 套件管理與設定指南
RPM(Red Hat Package Manager)是 Fedora、RHEL(Red Hat Enterprise Linux) 和 CentOS 使用的軟體套件管理系統。本指南將介紹 RPM 套件的安裝、管理、查詢與簽名驗證方法。
目錄
確認 RPM 版本
檢查 RPM 是否已安裝,以及版本資訊:
rpm --version
安裝 RPM 套件
1. 直接從 .rpm 檔案安裝
若已下載 .rpm 安裝檔,使用以下指令安裝:
sudo rpm -ivh package.rpm
參數說明:
-i:安裝套件(install)-v:顯示詳細訊息(verbose)-h:顯示安裝進度(hash)
2. 使用 dnf 安裝 RPM 套件(推薦)
dnf 會自動處理相依性,比 rpm 更方便:
sudo dnf install ./package.rpm
建議:若 RPM 套件有多個依賴項,請使用
dnf來解決相依性問題。
查詢已安裝的 RPM 套件
1. 列出所有已安裝的 RPM 套件
rpm -qa
2. 查詢特定套件是否已安裝
rpm -q package-name
3. 查看已安裝套件的詳細資訊
rpm -qi package-name
4. 查詢套件安裝的所有檔案
rpm -ql package-name
5. 檢查某個檔案屬於哪個 RPM 套件
rpm -qf /usr/bin/htop
移除 RPM 套件
若要刪除已安裝的套件,可使用:
sudo rpm -e package-name
或使用 dnf(推薦):
sudo dnf remove package-name
下載 RPM 套件但不安裝
有時候我們需要下載 .rpm 檔案但不立即安裝,可使用:
dnf download package-name
下載後,可使用 rpm 或 dnf 來安裝。
驗證 RPM 套件簽名
在安裝 RPM 之前,建議先驗證其簽名,確保來源安全。
1. 取得 RPM 套件的 GPG 簽名資訊
rpm -qpi package.rpm | grep "Signature"
2. 驗證 RPM 簽名是否正確
rpm --checksig package.rpm
若顯示 OK,代表簽名有效。
手動建置 RPM 套件
1. 安裝 rpm-build
sudo dnf install -y rpm-build
2. 建立 RPM 開發目錄
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
3. 編寫 .spec 檔案
在 ~/rpmbuild/SPECS 內建立 .spec,例如:
Name: mypackage
Version: 1.0
Release: 1%{?dist}
Summary: This is a test package
License: GPL
Source0: mypackage-1.0.tar.gz
%description
This is a sample RPM package.
%prep
%setup -q
%build
make
%install
make install DESTDIR=%{buildroot}
%files
/usr/bin/mypackage
%changelog
4. 編譯 RPM 套件
rpmbuild -ba ~/rpmbuild/SPECS/mypackage.spec
生成的 .rpm 會放在 ~/rpmbuild/RPMS/x86_64/ 內。
結語
本指南介紹了 RPM 套件的安裝、管理、查詢與驗證方法,並說明了如何手動建置 RPM 套件。建議使用 dnf 來安裝 RPM 套件,以確保所有相依性能夠自動解決,避免手動安裝失敗的問題。