Linux RPM

Posted by Adam on August 24, 2022
### 常用指令 1. rpm -q packagename: 顯示已安裝的套件資訊 2. rpm -qa: 列出所有已安裝的套件 3. rpm -i packagename.rpm: 安裝特定的套件 4. rpm -e packagename: 移除特定的套件 5. rpm -U packagename.rpm: 升級特定的套件 6. rpm -F packagename.rpm: 檢查並升級特定的套件 7. rpm -V packagename: 驗證特定的套件是否被修改過 8. rpm -qf /path/to/file: 查詢特定檔案屬於哪個套件 9. rpm -ql packagename: 列出特定套件安裝的檔案清單 10. rpm -q --whatrequires packagename: 查詢依賴該套件的其他套件 ``` # 安裝 rpm -ivh rp-pppoe-2.6-5.i386.rpm rpm -ivh --nodeps rp-pppoe-2.6-5.i386.rpm # 不考慮相依模組 rpm -ivh --replacepkgs rp-pppoe-2.6-5.i386.rpm # 直接覆蓋掉曾安裝過的套件 rpm -ivh --replacefiles rp-pppoe-2.6-5.i386.rpm # 直接覆蓋掉被修改過的問題檔案 # 升級 rpm -Uvh rp-pppoe-2.6-5.i386.rpm rpm -Fvh *.rpm # 所有在你 Linux 主機上面安裝過的套件才升級 # 查詢 # 1. 從系統查詢(由 /var/lib/rpm 資料庫取得的資料) rpm -q rp-pppoe # 僅列出 rp-pppoe 這個套件的版本; rpm -qa # 列出所有安裝過的套件與版本; rpm -qi rp-pppoe # 列出 rp-pppoe 這個套件的詳細資訊 rpm -ql rp-pppoe # 列出 rp-pppoe 這個套件安裝的檔案與路徑; rpm -qf /etc/rc.d/init.d/pppoe # 查詢 pppoe 這個檔案屬於哪一個套件? # 2. 由檔案查詢檔案的內容 rpm -qpi rp-pppoe-2.6-5.src.rpm # 查詢這個套件的詳細資訊; rpm -qpl rp-pppoe-2.6-5.src.rpm # 查詢這個套件裡面有多少的檔案內容存在 ```