CentOS系統上使用rpm命令管理程式包:安裝、卸載、升級、查詢、校驗、資料庫維護 1.基本安裝 2.rpm選項 3.軟體包腳本 4.軟體包的升級 升級時的註意事項: 不要對內核進行升級操作,linux支持多內核並存,所以直接安裝新內核就好. 如果升級時原程式的配置文件被更改過的話,新程式不會覆蓋 ...
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 軟體包名
校驗是否被修改過。
校驗參數的詳細解讀
傳送門: 軟體包校驗實驗