前言
rpm命令是RPM軟件包的管理工具。rpm原本是是Red Hat linux發(fā)行版專門用來(lái)管理Linux各項(xiàng)套件的程序。
目錄
一、概要
二、查詢已安裝的軟件包
三、查詢未安裝軟件包的信息
四、安裝、刪除、升級(jí)RPM軟件包
五、總結(jié)
六、思維導(dǎo)圖
一、概要
1、rpm命令是RPM軟件包的管理工具。rpm原本是Red Hat Linux發(fā)行版專門用來(lái)管理Linux各項(xiàng)套件的程序,由于它遵循GPL規(guī)則且功能強(qiáng)大方便,因而廣受歡迎。逐漸受到其他發(fā)行版的采用。RPM套件管理方式的出現(xiàn),讓Linux易于安裝,升級(jí),間接提升了Linux的適用度。
2、必須以root的身份執(zhí)行
3、查詢r(jià)pm軟件包
- [-q]:查詢r(jià)pm軟件包
- 要查詢軟件包的其他信息,可結(jié)合使用其它參數(shù)。
rpm -q[參數(shù)1參數(shù)2...] [安裝文件1] [安裝文件2]... # 查詢已安裝軟件包的信息
4、常用選項(xiàng)
- [-q]:查詢指定的一個(gè)或多個(gè)軟件包是否安裝;
- [-qa]:顯示當(dāng)前系統(tǒng)中已安裝的全部rpm軟件包清單;
- [-qi]:顯示軟件包的名稱、版本、許可協(xié)議、用途等詳細(xì)信息;
- [-ql]:顯示指定的軟件包在當(dāng)前系統(tǒng)中安裝的所有目錄、文件列表;
- [-qf]:查詢指定的目錄或文件是由哪個(gè)軟件包安裝所產(chǎn)生的;
- [-qc]:顯示指定軟件包在當(dāng)前系統(tǒng)中被標(biāo)注為配置文件的文件清單;
二、查詢已安裝的軟件包
1、查詢指定的軟件包是否安裝
- 若已安裝,將顯示該軟件包的完整名稱(包含版本號(hào)信息);
- 若未安裝,則提示未安裝。
[root@localhost ~]# rpm -q openssh samba
openssh-7.4p1-16.el7.x86_64
package samba is not installed
- 一般系統(tǒng)安裝的軟件包較多,為便于分屏瀏覽,可結(jié)合管道操作符和less、grep命令來(lái)實(shí)現(xiàn),其命令用法為:
[root@localhost ~]# rpm -qa | less
2、查看已安裝的openssh軟件包的版本、用途等詳細(xì)信息
[root@localhost ~]# rpm -qi openssh
3、顯示已安裝openssh軟件包中所包含文件的文件名及安裝位置
[root@localhost ~]# rpm -ql openssh | less
/etc/ssh
/etc/ssh/moduli
/usr/bin/ssh-keygen
/usr/libexec/openssh
/usr/libexec/openssh/ctr-cavstest
/usr/libexec/openssh/ssh-keysign
/usr/share/doc/openssh-7.4p1
/usr/share/doc/openssh-7.4p1/CREDITS
/usr/share/doc/openssh-7.4p1/ChangeLog
/usr/share/doc/openssh-7.4p1/INSTALL
/usr/share/doc/openssh-7.4p1/OVERVIEW
/usr/share/doc/openssh-7.4p1/PROTOCOL
/usr/share/doc/openssh-7.4p1/PROTOCOL.agent
/usr/share/doc/openssh-7.4p1/PROTOCOL.certkeys
/usr/share/doc/openssh-7.4p1/PROTOCOL.chacha20poly1305
/usr/share/doc/openssh-7.4p1/PROTOCOL.key
/usr/share/doc/openssh-7.4p1/PROTOCOL.krl
/usr/share/doc/openssh-7.4p1/PROTOCOL.mux
/usr/share/doc/openssh-7.4p1/README
/usr/share/doc/openssh-7.4p1/README.DNS
/usr/share/doc/openssh-7.4p1/README.platform
/usr/share/doc/openssh-7.4p1/README.privsep
/usr/share/doc/openssh-7.4p1/README.tun
/usr/share/doc/openssh-7.4p1/TODO
/usr/share/licenses/openssh-7.4p1
/usr/share/licenses/openssh-7.4p1/LICENCE
/usr/share/man/man1/ssh-keygen.1.gz
/usr/share/man/man8/ssh-keysign.8.gz
4、查詢系統(tǒng)中access文件是由哪個(gè)軟件包安裝的
[root@localhost ~]# rpm -qf /etc/postfix/access
postfix-2.10.1-7.el7.x86_64
5、查詢系統(tǒng)中postfix軟件包安裝的配置文件列表
[root@localhost ~]# rpm -qc postfix
/etc/pam.d/smtp.postfix
/etc/postfix/access
/etc/postfix/canonical
/etc/postfix/generic
/etc/postfix/header_checks
/etc/postfix/main.cf
/etc/postfix/master.cf
/etc/postfix/relocated
/etc/postfix/transport
/etc/postfix/virtual
/etc/sasl2/smtpd.conf
三、查詢未安裝軟件包的信息
安裝一個(gè)軟件包前,需了解軟件包的相關(guān)信息,比如:該軟件包的描述信息、文件列表等。
在參數(shù)基礎(chǔ)上再添加[ p ]參數(shù)可以實(shí)現(xiàn)對(duì)未安裝的rpm軟件包相應(yīng)信息的顯示。
[root@localhost ~]# rpm -qlp /mnt/Packages/ppp-2.4.5-33.el7.x86_64.rpm
/etc/logrotate.d
/etc/logrotate.d/ppp
/etc/pam.d/ppp
/etc/ppp
/etc/ppp/chap-secrets
/etc/ppp/eaptls-client
/etc/ppp/eaptls-server
/etc/ppp/options
/etc/ppp/pap-secrets
/usr/lib/tmpfiles.d/ppp.conf
/usr/lib64/pppd
/usr/lib64/pppd/2.4.5
/usr/lib64/pppd/2.4.5/minconn.so
/usr/lib64/pppd/2.4.5/openl2tp.so
/usr/lib64/pppd/2.4.5/passprompt.so
/usr/lib64/pppd/2.4.5/passwordfd.so
/usr/lib64/pppd/2.4.5/pppoatm.so
/usr/lib64/pppd/2.4.5/pppol2tp.so
/usr/lib64/pppd/2.4.5/radattr.so
/usr/lib64/pppd/2.4.5/radius.so
/usr/lib64/pppd/2.4.5/radrealms.so
/usr/lib64/pppd/2.4.5/rp-pppoe.so
/usr/lib64/pppd/2.4.5/winbind.so
/usr/sbin/chat
/usr/sbin/pppd
/usr/sbin/pppdump
/usr/sbin/pppoe-discovery
/usr/sbin/pppstats
/usr/share/doc/ppp-2.4.5
/usr/share/doc/ppp-2.4.5/FAQ
/usr/share/doc/ppp-2.4.5/README
/usr/share/doc/ppp-2.4.5/README.MPPE
/usr/share/doc/ppp-2.4.5/README.MSCHAP80
/usr/share/doc/ppp-2.4.5/README.MSCHAP81
/usr/share/doc/ppp-2.4.5/README.cbcp
/usr/share/doc/ppp-2.4.5/README.eap-tls
/usr/share/doc/ppp-2.4.5/README.linux
/usr/share/doc/ppp-2.4.5/README.pppoe
/usr/share/doc/ppp-2.4.5/README.pwfd
/usr/share/doc/ppp-2.4.5/sample
/usr/share/doc/ppp-2.4.5/sample/auth-down
/usr/share/doc/ppp-2.4.5/sample/auth-up
/usr/share/doc/ppp-2.4.5/sample/ip-down
/usr/share/doc/ppp-2.4.5/sample/ip-up
/usr/share/doc/ppp-2.4.5/sample/options
/usr/share/doc/ppp-2.4.5/sample/options.ttyXX
/usr/share/doc/ppp-2.4.5/sample/pap-secrets
/usr/share/doc/ppp-2.4.5/scripts
/usr/share/doc/ppp-2.4.5/scripts/README
/usr/share/doc/ppp-2.4.5/scripts/autopppd
/usr/share/doc/ppp-2.4.5/scripts/callback
/usr/share/doc/ppp-2.4.5/scripts/chat-callback
/usr/share/doc/ppp-2.4.5/scripts/chatchat
/usr/share/doc/ppp-2.4.5/scripts/chatchat/README
/usr/share/doc/ppp-2.4.5/scripts/chatchat/chatchat.c
/usr/share/doc/ppp-2.4.5/scripts/ip-down.local.add
/usr/share/doc/ppp-2.4.5/scripts/ip-up.local.add
/usr/share/doc/ppp-2.4.5/scripts/options-rsh-loc
/usr/share/doc/ppp-2.4.5/scripts/options-rsh-rem
/usr/share/doc/ppp-2.4.5/scripts/options-ssh-loc
/usr/share/doc/ppp-2.4.5/scripts/options-ssh-rem
/usr/share/doc/ppp-2.4.5/scripts/plog
/usr/share/doc/ppp-2.4.5/scripts/poff
/usr/share/doc/ppp-2.4.5/scripts/pon
/usr/share/doc/ppp-2.4.5/scripts/pon.1
/usr/share/doc/ppp-2.4.5/scripts/ppp-off
/usr/share/doc/ppp-2.4.5/scripts/ppp-on
/usr/share/doc/ppp-2.4.5/scripts/ppp-on-dialer
/usr/share/doc/ppp-2.4.5/scripts/ppp-on-rsh
/usr/share/doc/ppp-2.4.5/scripts/ppp-on-ssh
/usr/share/doc/ppp-2.4.5/scripts/redialer
/usr/share/doc/ppp-2.4.5/scripts/secure-card
/usr/share/man/man8/chat.8.gz
/usr/share/man/man8/pppd-radattr.8.gz
/usr/share/man/man8/pppd-radius.8.gz
/usr/share/man/man8/pppd.8.gz
/usr/share/man/man8/pppdump.8.gz
/usr/share/man/man8/pppoe-discovery.8.gz
/usr/share/man/man8/pppstats.8.gz
/var/lock/ppp
/var/log/ppp
/var/run/ppp
四、安裝、刪除、升級(jí)RPM軟件包
1、語(yǔ)法:
- 安裝:rpm -i[vh] 軟件包文件全路徑名 [--force] [--nodeps]
- 刪除:rpm -e 軟件包名
- 升級(jí):rpm -U[vh] 軟件包文件全路徑名 [--force] [--nodeps]
2、常用選項(xiàng):
- [ -i ]:在當(dāng)前系統(tǒng)中安裝(install)一個(gè)新的RPM軟件包
- [ -v ]:顯示安裝過(guò)程中較詳細(xì)(verbose)的安裝信息,有助于了解安裝是否成功及出錯(cuò)原因
- [ -h ]:在安裝或升級(jí)過(guò)程中,以hash記號(hào)(“#”) 顯示安裝的進(jìn)度
- [ -e ]:刪除(erase)指定名稱的已安裝的軟件包
- [ -U ]:升級(jí)(upgrade)安裝,先卸載舊版本,再安裝新軟件包,若指定的rpm包并未安裝,則系統(tǒng)直接進(jìn)行安裝
- [ --force ]:強(qiáng)制安裝指定的軟件包。當(dāng)需要替換已安裝的軟件包及文件、或者安裝一個(gè)比當(dāng)前使用的軟件版本更舊的軟件時(shí),可以使用此參數(shù)
- [ --nodeps ]:在安裝、升級(jí)或刪除一個(gè)軟件包時(shí),不檢查與其他軟件包的依賴關(guān)系
五、總結(jié)
- rpm命令是RPM軟件包的管理工具
- 必須以root的身份執(zhí)行
六、思維導(dǎo)圖