No.20 RPM軟件包管理
建立集中數據庫,記錄軟件包的變化信息,分析軟件包依賴關系。
rpm包文件名特征:軟件名-版本信息.操作系統.硬件架構.rpm
rpm安裝位置:
普通執行程序 | /usr/bin、/bin |
服務器程序、管理工具 | /usr/bin、/sbin |
配置文件 | /etc、/etc/軟件名 |
日誌文件 | /var/log、/var/log/軟件名 |
程序文檔、Man手冊 | /usr/share/doc、/usr/share/man |
(1)查詢軟件信息:
rpm -q子選項 軟件名
-a:列出已經安裝的軟件。
-i:查看指定軟件的信息。
-l:查看軟件的安裝文件清單。
-c:列出清單的位置。
-f:rpm -qf 命令的絕對路徑:查詢某個文件或目錄是哪個軟件帶來的,即使刪除也可以查詢到。
-pi:查看指定本地軟件的詳細信息
[root@node0 ~]# rpm -qpi ./elasticsearch-2.3.4.rpm
warning: ./elasticsearch-2.3.4.rpm: Header V4 RSA/SHA1 Signature, key ID d88e42b4: NOKEY
Name : elasticsearch
Relocations: /usr
Version : 2.3.4 Vendor: (none)
Release : 1
Build Date: Thu 30 Jun 2016 07:32:30 PM CST
Install Date: (not installed)
Build Host: vagrant-ubuntu-trusty-64
Group : Application/Internet
Source RPM: elasticsearch-2.3.4-1.src.rpm
Size : 30797293
License: (c) 2009
Signature : RSA/SHA1, Thu 30 Jun 2016 07:32:32 PM CST, Key ID d27d666cd88e42b4
Packager : Elasticsearch
Summary : Distribution: RPM
Description :
Elasticsearch is a distributed RESTful search engine built for the cloud. Reference documentation can be found at https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html and the 'Elasticsearch: The Definitive Guide' book can be found at https://www.elastic.co/guide/en/elasticsearch/guide/current/index.html
-pl:查看本地軟件的安裝清單
[root@node0 ~]# rpm -qpl ./elasticsearch-2.3.4.rpm
warning: ./elasticsearch-2.3.4.rpm: Header V4 RSA/SHA1 Signature, key ID d88e42b4: NOKEY
/etc/elasticsearch
/etc/elasticsearch/elasticsearch.yml
/etc/elasticsearch/logging.yml
/etc/elasticsearch/scripts
/etc/init.d/elasticsearch
/etc/sysconfig/elasticsearch
/usr/lib/sysctl.d
/usr/lib/sysctl.d/elasticsearch.conf
/usr/lib/systemd/system/elasticsearch.service
/usr/lib/tmpfiles.d
/usr/lib/tmpfiles.d/elasticsearch.conf
.......
-pc:僅列出本地軟件的配置文件清單
[root@node0 ~]# rpm -qpc ./elasticsearch-2.3.4.rpm
warning: ./elasticsearch-2.3.4.rpm: Header V4 RSA/SHA1 Signature, key ID d88e42b4: NOKEY
/etc/elasticsearch/elasticsearch.yml
/etc/elasticsearch/logging.yml
/etc/init.d/elasticsearch
/etc/sysconfig/elasticsearch
/usr/lib/sysctl.d/elasticsearch.conf
/usr/lib/systemd/system/elasticsearch.service
/usr/lib/tmpfiles.d/elasticsearch.conf
(2)安裝軟件:
rpm -i rpm文件
[root@node0 ~]# rpm -ivh ./elasticsearch-2.3.4.rpm
warning: ./elasticsearch-2.3.4.rpm: Header V4 RSA/SHA1 Signature, key ID d88e42b4: NOKEY
Preparing... ########################################### [100%]
Creating elasticsearch group... OK
Creating elasticsearch user... OK
1:elasticsearch ########################################### [100%]
### NOT starting on installation, please execute the following statements to configure elasticsearch service to start automatically using chkconfig
sudo chkconfig --add elasticsearch
### You can start elasticsearch service by executing
sudo service elasticsearch start
(3)升級軟件:
rpm -U rpm包文件
rpm -F rpm包文件
-v:顯示安裝細節
-h:使用#顯示進度
--forece:強制安裝
--test:測試安裝
(4)卸載軟件:
rpm -e 軟件名稱(支持通配符)
--nodeps:忽略依賴關系
[root@node0 ~]# rpm -qa | grep ela
elasticsearch-2.3.4-1.noarch
[root@node0 ~]# rpm -e elasticsearch-2.3.4-1.noarch
Stopping elasticsearch service... OK
[root@node0 ~]# rpm -qa | grep ela
(5)rpm軟件包驗證:
驗證待安裝的軟件是否破損:
rpm -K --nosignature rpm包文件
[root@node0 ~]# rpm -K --nosignature elasticsearch-2.3.4.rpm
elasticsearch-2.3.4.rpm: sha1 md5 OK
驗證rpm包文件是否是官方版本:
[root@node0 ~]# rpm --import /dvd/RPM-GPG-KEY-CentOS-6 # 導入公鑰文件
[root@node0 ~]# rpm -K /dvd/Packages/yajl-1.0.7-3.el6.x86_64.rpm # 驗證
/dvd/Packages/yajl-1.0.7-3.el6.x86_64.rpm: rsa sha1 (md5) pgp md5 OK
No.20 RPM軟件包管理