天天看點

centos 上傳jar 指令_Linux指令查詢rpm軟體包用法查詢指令的格式查詢軟體包是否安裝查詢系統中所有安裝軟體包查詢軟體包的詳細資訊查詢軟體包中的檔案清單查詢系統檔案屬于哪個rpm包查詢軟體包所依賴的軟體包

RPM 包管理系統是非常強大和友善的包管理系統,它比源碼包的友善之處就在于可以使用指令查詢、更新和解除安裝。在查詢的時候,其實是在查詢 /var/lib/rpm/ 這個目錄下的資料庫檔案,那為什麼不直接檢視這些檔案呢?你可以嘗試使用 Vim 檢視這些檔案,會發現都是亂碼。也就是說,這些檔案其實都是二進制檔案,不能直接用編輯器檢視,是以才需要使用指令檢視。

查詢指令的格式

RPM 查詢指令采用如下格式:

[[email protected] ~]# rpm 選項 查詢對象

查詢軟體包是否安裝

可以查詢軟體包是否安裝,指令格式如下:

[[email protected] ~]# rpm -q 包名

選項:

  • -q:查詢(query)

例如,檢視一下 apache 包是否安裝,可以執行如下指令:

[[email protected] ~]# rpm -q httpd

httpd-2.2.15-15.el6.centos.1.i686

因為 apache 是已經安裝完成的包,是以隻需要給出"包名",系統就可以識别。而沒有安裝的包就必須使用"絕對路徑+包全名"格式才可以确定包。前面一直強調的包名和包全名不能寫混亂就是這個原因。

查詢系統中所有安裝軟體包

可以查詢 Linux 系統中所有已經安裝的軟體包,指令格式如下:

[[email protected] ~]# rpm -qa

libsamplerate-0.1.7-2.1.el6.i686

startup-notification-0.10-2.1.el6.i686

gnome-themes-2.28.1-6.el6.noarch

fontpackages-filesystem-1.41-1.1.el6.noarch

gdm-libs-2.30.4-33.el6_2.i686

gstreamer-0.10.29-1.el6.i686

redhat-lsb-graphics-4.0-3.el6.centos.i686

…省略部分輸出…

當然,可以用管道符來檢視所需的内容,比如:

[[email protected] ~]# rpm -qa | grep httpd

httpd-devel-2.2.15-15.el6.centos.1.i686

httpd-tools-2.2.15-15.el6.centos.1.i686

httpd-manual-2.2.15-15.el6.centos.1.noarch

httpd-2.2.15-15.el6.centos.1.i686

你會發現,使用"rpm-q包名"隻能檢視這個包是否安裝,但是使用"rpm-qa|grep 包名"會把包含包名稱的所有包都列出來。

查詢軟體包的詳細資訊

[[email protected] ~]# rpm -qi 包名

選項:

  • -i:查詢軟體資訊(information)

例如,檢視 apache 包的安裝資訊,可以使用以下指令:

[[email protected] ~]# rpm -qi httpd

Name : httpd Relocations:(not relocatable)

#包名

Version : 2.2.15 Vendor:CentOS

#版本和廠商

Release : 15.el6.centos.1 Build Date: 2012年02月14日星期二 06時27分1秒

#發行版本和建立時間

Install Date: 2013年01月07日星期一19時22分43秒

Build Host:

c6b18n2.bsys.dev.centos.org

#安裝時間

Group : System Environment/Daemons Source RPM:

httpd-2.2.15-15.el6.centos.1.src.rpm

#組和源RPM封包件名

Size : 2896132 License: ASL 2.0

#軟體包大小和許可協定

Signature :RSA/SHA1,2012年02月14日星期二 19時11分00秒,Key ID

0946fca2c105b9de

#數字簽名

Packager:CentOS BuildSystem

URL : http://httpd.apache.org/

#廠商網址

Summary : Apache HTTP Server

#軟體包說明

Description:

The Apache HTTP Server is a powerful, efficient, and extensible web server.

#描述

通過這條指令可以看到包名、版本、發行版本、安裝時間,軟體包大小等資訊。

不僅如此,還可以查詢還沒有安裝的軟體包的詳細資訊,指令格式如下:

[[email protected] ~]# rpm -qip 包全名

選項:

  • -p:查詢沒有安裝的軟體包(package)

注意,沒有安裝的軟體包是存放在CD光牒中的,而且因為沒有安裝,是以需要使用包全名。

查詢軟體包中的檔案清單

可以查詢已經安裝的軟體包中的檔案清單和安裝的完整目錄,指令格式如下:

[[email protected] ~]# rpm -ql 包名

選項:

  • -l:列出軟體包中所有的檔案清單和軟體所安裝的目錄(list)

例如,想要檢視一下問 apache 封包件的安裝位置,可以執行如下指令:

[[email protected] ~]# rpm -ql httpd

/etc/httpd

/etc/httpd/conf

/etc/httpd/conf.d

/etc/httpd/conf.d/README

/etc/httpd/conf.d/welcome.conf

/etc/httpd/conf/httpd.conf

/etc/httpd/conf/magic

…省略部分輸出…

那麼,可以查詢還沒有安裝的軟體包中的檔案清單和打算安裝的位置嗎?答案是可以,指令格式如下:

[[email protected] ~]# rpm -qlp 包全名

選項:

  • -p:查詢沒有安裝的軟體包資訊(package)

想要查詢還沒有安裝的 bind 軟體包中的檔案清單和打算安裝的位置,可以執行如下指令:

[[email protected] ~]# rpm -qlp /mnt/cdrom/Packages/bind-9.8.2-0.10.rc1.el6.i686.rpm

/etc/NetworkManager/dispatcher.d/13-named

/etc/logrotate.d/named

/etc/named

/etc/named.conf

/etc/named.iscdlv.key

/etc/named.rfc1912.zones

查詢系統檔案屬于哪個rpm包

既然可以知道每個 RPM 包中的檔案的安裝位置,那麼可以查詢系統檔案屬于哪個 RPM 包嗎?當然可以,不過需要注意的是,手工建立的檔案是不能查詢的,因為這些檔案不是通過 RPM 包安裝的,當然不能反向查詢它屬于哪個 RPM 包。

指令格式如下:

[[email protected] ~]# rpm -qf 系統檔案名

選項:

  • -f:查詢系統檔案屬于哪個軟體包(file)

想查詢一下 ls 指令是由哪個軟體包提供的,可以執行如下指令:

[[email protected] ~]# rpm -qf /bin/ls

coreutils-8.4-19.el6.i686

查詢軟體包所依賴的軟體包

查詢系統中和已經安裝的軟體包有依賴關系的軟體包,指令格式如下:

[[email protected] ~]# rpm -qR 包名

選項:

  • -R:查詢軟體包的依賴性(requires)

例如,想查詢一下 apache 包的依賴包,可以執行如下指令:

[[email protected] ~]# rpm -qR httpd

/bin/bash

/bin/sh

/etc/mime.types

/usr/sbin/useradd

apr-util-ldap

chkconfig

config(httpd) = 2.2.15-15.el6.centos.1

httpd-tods = 2.2.15-15.el6.centos.1

initscripts >= 8.36

可以查詢沒有安裝的軟體包的依賴性嗎?加"-p"選項即可。例如,檢視一下還沒有安裝的 bind 軟體包的依賴包,可以執行如下指令:

[[email protected] ~]# rpm -qRp /mnt/cdrom/Packages/bind-9.8.2-0.10.rc1.el6.i686.rpm

/bin/bash

/bin/sh

bind-libs = 32:9.8.2-0.10.rc1.el6

chkconfig

chkconfig

config(bind) = 32:9.8.2-0.10.rc1.el6

grep

libbind9.so.80

libc.so.6

libc.so.6(GLIBC_2.0)

libc.so.6(GLIBC_2.1)

…省略部分輸出…

centos 上傳jar 指令_Linux指令查詢rpm軟體包用法查詢指令的格式查詢軟體包是否安裝查詢系統中所有安裝軟體包查詢軟體包的詳細資訊查詢軟體包中的檔案清單查詢系統檔案屬于哪個rpm包查詢軟體包所依賴的軟體包

繼續閱讀