
CentOS系統上使用rpm指令管理程式包:安裝、解除安裝、更新、查詢、校驗、資料庫維護
1.基本安裝
rpm -ivh PackageFile
2.rpm選項
rpm -ivh --test PackageFile
--test 測試安裝
--nodeps 忽略依賴性
--nosignature: 不檢查來源合法性
--nodigest:不檢查包完整性
3.軟體包腳本
--nopre 安裝前腳本
--nopost 安裝時腳本
--nopreun 解除安裝前腳本
--nopostun 解除安裝後腳本
#所有腳本均不執行的話直接使用
--noscript
4.軟體包的更新
更新時的注意事項:
- 不要對核心進行更新操作,linux支援多核心并存,是以直接安裝新核心就好.
- 如果更新時原程式的配置檔案被更改過的話,新程式不會覆寫配置檔案。會把就配置檔案重命名名(FILENAME.rpmnew)後儲存。
rpm -Uvh PackageFIle #軟體存在就更新,不存在就安裝
rpm -Fvh PackageFile #存在則更新,軟體不存在不更新
#
--oldpackage:降級
--force: 強制安裝
5.軟體包的查詢
rmp -qa
-p為包的查詢,a為列出所有包
rpm -qa | grep "mysql"
配合grep模糊搜尋使用
rpm -qf file
查詢配置檔案是用哪個包提供的
rpm -q --whatprovides webserver
查詢能力是那個軟體包提供,包括服務和檔案,相比于
-qf
來說範圍更寬
rpm -q --whatrequires
查詢指定的能力依賴于哪個包
6.包查詢
rpm -q --changelog httpd
查詢rpm包的日志檔案,非程式的日志檔案
-c: 查詢程式的配置檔案
-d: 查詢程式的文檔
-i: information
-l: 檢視指定的程式包安裝後生成的所有檔案
7.rpm包的資料庫
rpm包在安裝時會生成一個資料庫檔案,程式包名稱及版本、依賴關系、功能說明、包安裝後生成的各檔案路徑及校驗碼資訊.
- 資料庫目錄 存放在
中以/var/lib/rpm
開頭的檔案__db
- 初始化資料庫
資料庫不存在就建立,存在不執行任何操作rpm -initdb
- 重建資料庫
rpm -rebuilddb
8.rpm包校驗
在rpm資料庫中存放了軟體初始安裝時的資料資訊,當使用包校驗的會拿資料庫中的資訊比對現在的資訊,可以查出哪些被認為的修改或者覆寫過。
使用
rpm -V 軟體包名
校驗是否被修改過。
校驗參數的詳細解讀
傳送門: 軟體包校驗實驗