CentOS系統上rpm命令管理程序包: 安裝、升級、卸載、查詢、校驗、數據庫維護
rpm命令:rpm [OPTIONS] [PACKAGE_FILE] 安裝:-i, --install 升級:-U, --update, -F, --freshen 卸載:-e, --erase 查詢:-q, --query 校驗:-V, --verify 數據庫維護:-builddb, --initdb 安裝: rpm {-i|--install} [install-options] PACKAGE_FILE ... rpm -ivh PACKAGE_FILE... GENERAL OPTIONS: -v:verbose, 詳細信息 -vv:更詳細的輸出 [install-options]: -h:hash marks輸出進度條;每個#表示2%的進度; --test:測試安裝,檢查并報告依賴關系及沖突消息等; --nodeps:忽略依賴關系;不建議; --replacepkgs:重新安裝 注意:rpm可以自帶腳本; 四類: --noscripts preinstall:安裝過程開始之前運行的腳本,%pre,--nopre postinstall:安裝過程完成之后運行的腳本,%post,--nopost preuninstall:卸載過程真正開始執行之前運行的腳本,%preun,--nopreun postuninstall:卸載過程完成之后運行的腳本,%postun,--nopostun --nosignature:不檢查包簽名信息,不檢查來源合法性 --nodigest:不檢查包完整性信息; 升級: rpm {-U|--upgrade} [install-options] PACKAGE_FILE ... rpm {-F|--freshen} [install-options] PACKAGE_FILE ... -U:升級或安裝; -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 ... --allmatches:卸載所有匹配指定名稱的程序包的各版本; --nodeps:忽略依賴關系; --test:測試卸載 查詢: rpm {-q|--query} [select-options] [query-options] [select-options] PACKAGE_NAME:查詢指定的程序包是否已經安裝,及其版本; -a,--all:查詢所有已經安裝過的包; -f FILE:查詢指定的文件 由哪個程序包安裝生成; -p, --package PACKAGE_FILE:用于實現對未安裝的程序包執行查詢操作; --whatprovides CAPABILITY:查詢指定的CAPABILITY由哪個程序包提供; --whatrequires CAPABILITY:查詢指定的CAPABILITY被哪個包所依賴; [query-options] --changelog:查詢rpm包的changlog; -l,--list:程序安裝生成的所有文件列表; -i,--info:程序包相關的信息、版本號、大小、所屬的包組,等 -c,--configfiles:查詢指定的程序包提供的配置文件; -d, --docfiles:查詢指定的程序包提供的文檔; --provides:列出指定的程序包提供的所有的CAPABILITY; --whatprovides:可以用來查詢哪個包提供了指定內容 --whatrequires:可以用來查看哪些包依賴于指定內容 -R, --requires:查詢指定的程序包的依賴關系; --scripts:查看程序包自帶的腳本片斷; 用法: -qi PACKAGE, -qf FILE, -qc PACEAGE, -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 (includes permissions and file type) 5 digest (formerly MD5 sum) differs D Device major/minor number mismatch L readLink(2) path mismatch U User ownership differs G Group ownership differs T mTime differs P caPabilities differ
包來源合法性驗證和完整性驗證: 來源合法性驗證: 完整性驗證:
獲取并導入信息的包制作者的密鑰: 對于CentOS發行版來說:rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 驗證: (1)安裝此組織簽名的程序時,會自動執行驗證; (2)手動驗證:rpm -k PACKAGE_FILE
數據庫重建: rpm管理器數據庫路徑:/var/lib/rpm/ 查詢操作:通過此處的數據庫進行;
獲取幫助: CentOS 6:man rpm CentOS 7:man rpmdb rpm{--initdb|--rebuilddb} --initdb:初始化數據庫,當前無任何數據庫可實始化創建一個新的;當前有時不執行任何操作; --rebuilddb:
原創文章,作者:N24_xiaowen,如若轉載,請注明出處:http://www.www58058.com/60782
知識點總結的不錯,第三周的作業好像沒有完善。