升級:
rpm {-U|–upgrade} [install-options] PACKAGE_FILE …
-U:升級或安裝;
rpm {-F|–freshen} [install-options] PACKAGE_FILE …
-F:升級
rpm -Uvh PACKAGE-FILE…
rpm -Fvh PACKAGE-FILE…
–oldpackage:降級
–force:強制升級
注意:(1)不要對內核做升級操作;Linux支持多內核版本并存,因此,直接安裝新版本內核;
(2)如果某程序包的配置文件安裝后曾經被修改過,升級時,新版本的程序提供的同一個配置 文件不會覆蓋原文件,而是把新版本的配置版本的配置文件重命名(FILENAME.rpmnew)后提供;
卸載:
rpm {-e|–erase} [–allmatches] [–nodeps] [–noscripts]
[–notriggers] [–test] PACKAGE_NAME …
–nodeps :忽略依賴關系
–test: z測試卸載,dry run模式
查詢:
rpm {-q|–query} [select-options] [query-options]
[select-options]
PACKAGE_NAME : 查詢指定的程序報是否已經安裝,及其版本;
-a, –all: 查詢已安裝過的所有包;
-f, FILE: 查詢指定的文件有那個安裝包生成;
-g,–group GROUP
-p,–package PACKAGE_FILE:用于實現對未安裝的程序報執行查詢操作;
–whatprovides CAPABILITY: 查詢指定的CAPABILITY由那個程序包提供;
–whatrerequires CAPABILITY:查詢指定的CAPABILITY被那個包所依賴;
[qery-options]
–changelog:查詢rpm包的changlog
-l, list:程序安裝生成的所有列表;
-i ,–info: 程序包的相關信息,版本號,大小,所屬的包租,等;
-c, –configfiles: 查詢指定的程序包提供的配置文件;
-d,–docfiles:查詢指定的程序包提供的文檔;
–provides: 列出指定的程序包的所有的CAPABILITY;
-R,–requires:查看程序報自帶的腳本片斷;
用法:
-qi PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE
-qpi PACKAGE-FILE,-qpl PACKAGE-FILE, -qpc PACKAGE-FILE,…
校驗:
rpm {-V|–verify} [select-options] [verify-options]
S file size differs 文件大小不同
M Mode differs (formerfy MD5)differs 模式不同(包含文件和權限)
5 digest(formerly MD5 sum)differs
D Device major/minor number mismatch 設備主要/次要號碼不匹配
L readLink(2)path mismatch 符號鏈接路徑不同
U User ownership diffes 用戶所有者不同
G Group ownership differs 群組所有者不同
T mTime differs 修改時間不同
P caPabilites differ 功能不同
包來源合法性驗證和完整性驗證:
來源合法性驗證:
完整性驗證;
獲取定導入信任的包制作者的密鑰:
對于Centos7 發行版來說:rpm –import /etc/pki/rpm-gpg/RPM-KEY-Centos-7
驗證:(1)安裝此組織簽名的程序是,會自動執行驗證;
(2)手動驗證:rpm -k PACKAGE-FILE
數據庫重建:
rpm管理數據庫路徑:/var/lib/rpm/
查詢操作:通過此處數據庫進行;
獲取幫助:Centos6: man rpm
Centos7: man rpmdb
rpm {–initdb|–rebuilddb} [–dbpth DIRECTORY] [–root DIRECTORY]
–initdb:初始化數據庫,當天無任何數據庫可實現初始化創建一個新的;當前有時候不執行任何操作
–rebuilddb:重建構建,通過讀取當前系統上所有已經安裝的程序包進行重新創建;
原創文章,作者:shadow,如若轉載,請注明出處:http://www.www58058.com/65465
包管理更多的使用yum來解決~后面可以再總結一下yum相關的~