rpm命令是rpm軟體包的管理工具。rpm原本是red hat linux發行版專門用來管理linux各項套件的程式,由於它遵循gpl規則且功能強大方便,因而廣受歡迎。逐漸受到其他發行版的採用。rpm套件管理方式的出現,讓linux易於安裝,公升級,間接提公升了linux的適用度。
rpm包與原始碼包的區別
1、軟體包分類
原始碼包:c源**包
rpm包:編譯之後的二進位製包
2、原始碼包
優點:開源;可以自由選擇所需功能;可看源**;解除安裝方便(直接刪除安裝位置);
缺點:安裝步驟過多;編譯時間過長;
3、rpm包
優點:使用簡單,只需要幾個命令就可以實現包的安裝、公升級、查詢、解除安裝;安裝速度快;
缺點:不能看源**;功能選擇不如源**靈活;依賴性;
rpm包命名和依賴性
rpm包的命名規則
httpd 軟體包名
2.4.6 軟體版本
67 軟體發行的次數
el7.centos 適合的linux平台
x86_64 適合的硬體平台
rpm rpm包副檔名
2、rpm包的依賴性
樹形依賴性:a -> b -> c,即a依賴b,b依賴c
環形依賴:a -> b -> c -> a
rpm基本功能
1、rpm命令用於管理程式包:
主要 作用:安裝、公升級、解除安裝、查詢、校驗、資料庫維護
2、rpm具體使用方法
(1)語法:rpm[options] [package_file] 即 rpm 【選項】【包檔案】
(2)相關選項引數命令
安裝:-i,--install
公升級:-u,--update,-f
解除安裝:-e.--erase
查詢:-q --query
校驗:-v,--verify
資料庫維護:--builddb,--initdb
3、各選項引數詳解
(1)安裝:rpm [install-options] package_file ..
rpm -ivh package_file ..(rpm包常規安裝命令)
genearl options:綜合選項
-i:安裝
-v: 詳細資訊
-vv:更加詳細的資訊
-h:hash marks 輸出進度條:50個#表示進度條
--prefix :安裝指定目錄
--test:測試安裝,檢查並報告安裝是否完成 --> rpm -ivh --test package_file ..
--nodeps:忽略依賴關係,不建議操作 --> rpm -ivh --nodepst package_file
--replacepkgs:重新安裝rpm包 --> rpm -ivh --replacepkgs package_file
--nosignature:不檢查簽名資訊,不檢查**合法性
--nodigest:不檢查包完整資訊:
舉列:
[root@localhost leiyuncai]# rpm -ivh zsh- 5.0.2-14.el7.x86_64.rpm
注意:忽略 --nodeps 依賴關係強制安裝可能會導致所安裝包不能夠正常工作
(2)公升級
rpm [install-options] package_file ..
rpm [install-options] package_file ..
-u: 公升級或者安裝
-f:單純的公升級,如果之前沒有rpm包將無法公升級
--test:測試安裝,檢查並報告完成 --> rpm -uvh --test package_file ..
--nodeps:忽略依賴關係,不建議操作 --> rpm -uvh --nodepst package_file
--replacepkgs:重新安裝rpm包 --> rpm -ivh --ueplacepkgs package_file
--oldpackage::降級操作
--force:強制公升級
舉列:[root@localhost leiyuncai]# rpm -uvh zsh-5.0.2-14.el7.x86_64.rpm
注意:(1)不要對核心做公升級操作,liunx支援多核心並存,直接安裝新版本
(2) 如果源程式包的配置檔案安裝後曾修改過,公升級時,新版本的程式提供的同一配置檔案不會覆蓋原有版本檔案,而重新命名為(filename,rpmnew)
(3)解除安裝:
rpm [--allmatches] [--nodeps] [--noscripts] [--test] package_name ...
rpm -e 軟體包名稱
-e:解除安裝指定程式
-allmatches:解除安裝所有匹配指定名稱的程式包的各個版本
--nodeps:忽略依賴關係
--test:測試解除安裝,顯示依賴關係
舉列:[root@localhost ~]# rpm -e zsh
(4) 查詢
rpm [select-options] [query-options]
select-options:給指定值,一般是需要查詢檔案名稱
-a.all:查詢所有已經安裝過的包,後面一般通過管道輸出至正規表示式匹配-列如: rpm -qa | grep "^z"
-f file:檢視指定的檔案由哪個程式包安裝生產:
-p, --package package_file:對於未安裝的程式包執行查詢操作
--whatprovides capability:查詢指定的capability由哪個程式包提供
--whatrequlres capability:查詢指定的-capability被哪個程式包依賴
[query-options]
--changelog:查詢rpm包的changelog; 歷史
-l --list:列出程式包安裝生產的檔案列表
-c,:查詢程式包有哪些指定的配置檔案
-d:查詢指定的程式包提供的文件資訊
--provides:列出指定程程式包的 capability
-r,--regulres:查詢程式包依賴的包
--scripts:檢視程式包自帶的指令碼片斷
舉列:
1.[root@localhost packages]# rpm -qa
#:查詢所有安裝的包
#:查詢未安裝包的詳細資訊
#:檢視程式包的相關資訊
#:檢視程式包安裝產生的檔案列表
5.[root@localhost packages]# rpm -qc zsh
#:檢視程式包的配置檔案
6.[root@localhost packages]# rpm -qd zsh
#:檢視程式包提供的文件資訊
7.[root@localhost packages]# rpm -qr zsh
# :查詢程式包依賴的包
RPM及其rpm命令詳解
rpm和rpm一樣嗎?是不是看的有點暈呀 rpm全稱是redhat package manager即redhat軟體包管理工具,而rpm是rpm的中的乙個命令,只有root使用者才能使用,用於軟體包的安裝,查詢和公升級等。軟體包一般由四個部分組成 1,二進位制檔案 一般放 在 bin,sbin,us...
RPM命令詳解
一 安裝 命令格式 rpm i or install options file1.rpm filen.rpm 引數 file1.rpm filen.rpm 將要安裝的rpm包的檔名 詳細選項 h or hash 安裝時輸出hash記號 test 只對安裝進行測試,並不實際安裝。percent 以百分...
rpm命令詳解
rpm 常用命令 1.安裝乙個包 rpm ivh 2.公升級乙個包 rpm uvh 3.移走乙個包 rpm e 4.安裝引數 force 即使覆蓋屬於其它包的檔案也強迫安裝 nodeps 如果該rpm包的安裝依賴其它包,即使其它包沒裝,也強迫安裝。5.查詢乙個包是否被安裝 rpm q rpm pac...