導讀 | RPM是Linux系統centos系列的套件管理系統,透過rpm可以快速的安裝軟體,在學習和工作常用到的套件管理系統之一。下面我們就來詳細了解下rpm的使用-rpm你不知道的事。 |
透過rpm 指令查詢一個rpm 套件是否安裝了,也是要透過rpm 資料庫來完成的;所以我們要常用下面的兩個指令來初始化rpm 資料庫;
[root@feiyu ~]# rpm --initdb [root@feiyu ~]# rpm --rebuilddb 注:这个要花好长时间;
註:這兩個參數是極為有用,有時rpm 系統出了問題,不能安裝和查詢,大多是這裡出了問題。
2,查詢系統已安裝的軟體?[root@feiyu ~]# rpm -qa |more3,查詢一個已經安裝的檔案屬於哪個軟體包,?
語法: rpm -qf 軟體名稱
[root@feiyu ~]# rpm -qf `which nmon` nmon-14i-8.el6.x86_644,查詢已安裝軟體套件都安裝到何處?
語法:rpm -ql 軟體名稱
[root@feiyu ~]# rpm -ql nmon /usr/bin/nmon /usr/share/doc/nmon-14i /usr/share/doc/nmon-14i/Documentation.txt /usr/share/man/man1/nmon.1.gz5,怎麼查詢一個已安裝軟體包的資訊?
語法格式: rpm -qi 軟體名稱
[root@feiyu ~]# rpm -qi nmon6,查看已安裝軟體的設定檔
語法格式:rpm -qc 軟體名稱
[root@feiyu ~]# rpm -qc vsftpd /etc/logrotate.d/vsftpd /etc/pam.d/vsftpd /etc/vsftpd/ftpusers /etc/vsftpd/user_list /etc/vsftpd/vsftpd.conf7,檢視一個已經安裝軟體的文件安裝位置:
語法格式: rpm -qd 軟體名稱
[root@feiyu ~]# rpm -qd nmon /usr/share/doc/nmon-14i/Documentation.txt /usr/share/man/man1/nmon.1.gz8,檢視一下已安裝軟體所依賴的軟體套件及檔案;
語法格式: rpm -qR 軟體名稱
[root@feiyu ~]# rpm -qR nmon
查詢已安裝軟體的總結:對於一個軟體包已經安裝,我們可以把一系列的參數組合起來用;例如 rpm -qil ;例如
[root@feiyu ~]# rpm -qil nmon9,對於未安裝的軟體包的檢視:
查看一個軟體包的用途、版本等資訊;
語法: rpm -qpi file.rpm
[root@feiyu ~]# rpm -qpi glibc-2.15-60.el6.x86_64.rpm10,查看一件軟體包所包含的檔案;
語法: rpm -qpl file.rpm
[root@feiyu ~]# rpm -qpl glibc-2.15-60.el6.x86_64.rpm11,查看軟體包的文檔所在的位置;
語法: rpm -qpd file.rpm
[root@feiyu ~]# rpm -qpd glibc-2.15-60.el6.x86_64.rpm12,查看一個軟體包的設定檔;
語法: rpm -qpc file.rpm
[root@feiyu ~]# rpm -qpc glibc-2.15-60.el6.x86_64.rpm13,查看一個軟體包的依賴關係 這個是對於沒有安裝的rpm的最實用的命令
语法: rpm -qpR file.rpm [root@feiyu ~]# rpm -qpR glibc-2.15-60.el6.x86_64.rpm14,對於src.rpm套件 的安裝處理方法: 第一種:編譯為rpm套件.
1,[root@feiyu ~]# rpm -i vsftpd-2.2.2-11.el6_3.1.src.rpm 2,[root@feiyu ~]# cd rpmbuild/SPECS/ [root@feiyu SPECS]# ls -l total 24 -rw-r--r--. 1 root root 21472 Feb 13 2013 vsftpd.spec 3,[root@feiyu SPECS]# rpmbuild -bb vsftpd.spec
這時,在 ../RPMS/(根據具體包的不同) 在這個目錄下,有一個新的rpm包,這個是編譯好的二進位。執行:rpm -i new-package.rpm即可安裝完成。
第二種:編譯成原始碼包1. [root@feiyu ~]# rpm -i vsftpd-2.2.2-11.el6_3.1.src.rpm 2. [root@feiyu ~]# cd rpmbuild/SPECS/ 3. [root@feiyu SPECS]# rpmbuild -bp vsftpd.spec 4. [root@feiyu SPECS]# cd ../BUILD/vsftpd-2.2.2/ 5. [root@feiyu vsftpd-2.2.2]# ./configure 这一步和编译普通的源码软件一样,可以加上参数 6. [root@feiyu vsftpd-2.2.2]# make 7. [root@feiyu vsftpd-2.2.2]# make install附:RPM指令常用參數
--initdb:初始化数据库 --rebuilddb:从已安装包的头信息中重建数据库的反转列表 -q:在系统中查询软件或查询指定rpm包的内容信息 -i:在系统中安装软件 -U:在系统中升级软件 -e:在系统中卸载软件 -h:用#(hash)符显示rpm安装过程 -v:详述安装过程 -c:列出所有配置文件 -d :列出所有文档文件 -l:列出包内的所有文件 -ivh:安装显示安装进度--install--verbose--hash -Uvh:升级软件包--Update; -qf:查找指定文件属于哪个RPM软件包[Query File]; -p:表明对RPM包进行查询,通常和其它参数同时使用,如: -qlp:查询某个RPM包中的所有文件列表 -qip:查询某个RPM包的内容信息
以上是rpm你不知道的事的詳細內容。更多資訊請關注PHP中文網其他相關文章!