SUSE RPM 套件管理與設定指南
RPM(Red Hat Package Manager)是 SUSE、openSUSE 以及其他 RPM-based Linux 發行版使用的套件管理系統。本指南將介紹如何在 SUSE Linux 上安裝、管理、查詢與驗證 RPM 套件,並示範手動建置 RPM 包的流程。
目錄
確認 RPM 版本
檢查系統中 RPM 工具版本:
rpm --version
安裝 RPM 套件
1. 使用 rpm
安裝
sudo rpm -ivh package.rpm
-i
:install-v
:verbose-h
:hash 樣式進度
2. 使用 zypper
安裝(推薦)
sudo zypper install ./package.rpm
zypper
會自動處理依賴,通常較佳。
查詢已安裝的 RPM 套件
- 列出所有已安裝套件
rpm -qa
- 查詢特定套件
rpm -q package-name
- 套件詳細資訊
rpm -qi package-name
- 套件檔案列表
rpm -ql package-name
- 查詢檔案所屬套件
rpm -qf /usr/bin/htop
移除 RPM 套件
- 使用
rpm
sudo rpm -e package-name
- 使用
zypper
(推薦)sudo zypper remove package-name
下載 RPM 套件但不安裝
若需僅下載套件檔,可使用 zypper-download 外掛:
sudo zypper install zypper-download-plugin -y
zypper download package-name
下載後檔案位於當前目錄。
驗證 RPM 套件簽名
- 查看簽名資訊
rpm -qpi package.rpm | grep "Signature"
- 驗證簽名
rpm --checksig package.rpm
顯示
OK
表示簽名有效。
手動建置 RPM 套件
- 安裝建置工具
sudo zypper install rpm-build -y
- 建立目錄結構
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
-
撰寫 SPEC 檔案
在~/rpmbuild/SPECS/mypackage.spec
:Name: mypackage Version: 1.0 Release: 1%{?dist} Summary: 範例 RPM 套件 License: GPL Source0: mypackage-1.0.tar.gz %description 這是一個示範 RPM 套件。 %prep %setup -q %build make %install make install DESTDIR=%{buildroot} %files /usr/bin/mypackage %changelog
- 編譯套件
rpmbuild -ba ~/rpmbuild/SPECS/mypackage.spec
生成的 RPM 位於
~/rpmbuild/RPMS/x86_64/
。
結語
本文介紹了 SUSE Linux 中 RPM 套件的安裝、管理、查詢與簽名驗證流程,以及如何手動建置 RPM 套件。建議日常使用 zypper
來處理 RPM 以自動解決相依,並在必要時使用 rpm
工具進行進階操作。