Centos rpm 常用命令

rpm 常用命令

一、rpm命令

RPM是“Redhat Package
Manager”的縮寫,根據名字也能猜到這是Redhat公司開發出來的。RPM是以一種數據庫記錄的方式來將你所需要的套件安裝到你的Linux主機的一套管理程序。也就是說,你的linux系統中存在着一個關於RPM的數據庫,它記錄了安裝的包以及包與包之間依賴相關性。

RPM包是預先在linux機器上編譯好並打包好的文件,安裝起來非常快捷。但是也有一些缺點,比如:

安裝的環境必須與編譯時的環境一致或者相當;
包與包之間存在着相互依賴的情況;
卸載包時需要先把依賴的包卸載掉,如果依賴的包是系統所必須的,那就不能卸載這個包,否則會造成系統崩潰。

命令格式

rpm [參數] 包全名

1、安裝包

-i :安裝的意思
-v :可視化
-h :顯示安裝進度

另外在安裝一個rpm包時常用的附帶參數有:

–force 強制安裝,即使覆蓋屬於其他包的文件也要安裝
–nodeps 當要安裝的rpm包依賴其他包時,即使其他包沒有安裝,也要安裝這個包.

2、升級包

rpm -Uvh 包全名 

-U 升級

3、卸載包

建議使用以下卸載方法:

rpm -e  包全名 --nodeps    #不檢查依賴,直接刪除rpm包

4、查詢一個包是否安裝

rpm -q  包名

5、列出該包中有哪些文件

rpm -ql 包全名 

6、列出一個未被安裝進系統的RPM包文件中包含有哪些文件?

rpm -qilp 包全名

7、列出服務器上的一個文件屬於哪一個RPM包

rpm -qf  文件

8、解壓RPM包

有時我們需要RPM包中的某個文件,如何解壓RPM包呢?RPM包括是使用cpio格式打包的,因此可以先轉成cpio然後解壓,如下所示:

rpm2cpio xxx.rpm | cpio -div

二、常用實例

rpm -qa #查詢當前安裝的所有rpm包

[root@localhost ~]# rpm -qa
man-db-2.6.3-11.el7.x86_64
alsa-lib-1.1.8-1.el7.x86_64
iwl6000g2b-firmware-17.168.5.2-72.el7.noarch
iwl5150-firmware-8.24.2.2-72.el7.noarch
iwl1000-firmware-39.31.5.1-72.el7.noarch
iwl6050-firmware-41.28.5.1-72.el7.noarch
perl-parent-0.225-244.el7.noarch
perl-Pod-Escapes-1.04-294.el7_6.noarch
perl-libs-5.16.3-294.el7_6.x86_64
gawk-4.0.2-4.el7_3.1.x86_64
perl-constant-1.27-2.el7.noarch
which-2.20-7.el7.x86_64
perl-PathTools-3.40-5.el7.x86_64
perl-threads-shared-1.43-6.el7.x86_64
libnl3-3.2.28-4.el7.x86_64
perl-Pod-Simple-3.28-4.el7.noarch
lua-5.1.4-15.el7.x86_64
vim-filesystem-7.4.629-6.el7.x86_64

太多了就不顯示全部了

1、rpm -qa|grep openssh #查詢當前安裝的和openssh相關的包

[root@localhost ~]# rpm -qa|grep openssh
openssh-7.4p1-21.el7.x86_64
openssh-clients-7.4p1-21.el7.x86_64
openssh-server-7.4p1-21.el7.x86_64

2、rpm -ql 包全名 #查詢httpd安裝路徑

[root@localhost ~]# rpm -ql openssh-server-7.4p1-21.el7.x86_64
/etc/pam.d/sshd
/etc/ssh/sshd_config
/etc/sysconfig/sshd
/usr/lib/systemd/system/sshd-keygen.service
/usr/lib/systemd/system/sshd.service
/usr/lib/systemd/system/sshd.socket
/usr/lib/systemd/system/[email protected]
/usr/lib64/fipscheck/sshd.hmac
/usr/libexec/openssh/sftp-server
/usr/sbin/sshd
/usr/sbin/sshd-keygen
/usr/share/man/man5/moduli.5.gz
/usr/share/man/man5/sshd_config.5.gz
/usr/share/man/man8/sftp-server.8.gz
/usr/share/man/man8/sshd.8.gz
/var/empty/sshd
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章