20最有用的RPM命令示例
关于RPM的一些事实(RedHat包管理器)
- RPM是免费的GPL( 通用公共许可 )下发布的。
- RPM保持在/ var / lib / rpm的数据库中的所有已安装的软件包的信息。
- RPM是在Linux系统下安装软件包的唯一方法,如果你使用源代码安装软件包,那么rpm将不能管理它。
- 它是什么 , 它是从哪里来的 , 依赖关系信息 , 版本信息等:用.rpm文件,其中包含有关软件包,如实际信息RPM的交易
RPM命令有五种基本模式
- 安装 :用于安装任何RPM软件包。
- 删除 :它是用来清除,删除或卸载任何RPM软件包。
- 升级 :用于更新现有的RPM包。
- 确认 :这是用于查询不同的RPM软件包。
- 查询 :它用于任何RPM包的验证。
在哪里可以找到RPM包
下面是rpm的网站,在那里你可以找到并下载所有的 RPM包的列表。 阅读: 请记住,在Linux上安装软件包时,用root权限可以用其相应的选项来管理RPM的命令,你必须是 root用户。1.如何检查RPM签名包
在你的Linux系统安装前一定要检查包的PGP签名,并确保其完整性和来源是 确定 。 使用下面的命令 -checksig( 检查签字 )选项来检查一个叫 洋泾浜软件包的签名。[root@youcl]# rpm --checksig pidgin-2.7.9-5.el6.2.i686.rpm pidgin-2.7.9-5.el6.2.i686.rpm: rsa sha1 (md5) pgp md5 OK
2.如何安装RPM软件包
对于安装RPM软件包,使用以下命令用 -i选项。 例如,要安装一个rpm包叫 洋泾浜,2.7.9-5.el6.2.i686.rpm。[root@youcl]# rpm -ivh pidgin-2.7.9-5.el6.2.i686.rpm Preparing... ########################################### [100%] 1:pidgin ########################################### [100%]
RPM命令和选项
- -i:安装一个软件包
- -v:详细为一个更好的显示
- -h:打印散列标记作为包归档文件解压缩。
3.如何在安装之前检查RPM软件包的依赖关系
假设您想在安装或升级软件包之前进行依赖性检查。例如,使用下面的命令检查 的BitTorrent-5.2.2-1-Python2.4.noarch.rpm包的依赖关系。它将显示包的依赖关系的列表。[root@youcl]# rpm -qpR BitTorrent-5.2.2-1-Python2.4.noarch.rpm /usr/bin/python2.4 python >= 2.3 python(abi) = 2.4 python-crypto >= 2.0 python-psyco python-twisted >= 2.0 python-zopeinterface rpmlib(CompressedFileNames) = 2.6
RPM命令和选项
- -q:查询软件包
- -p:列表功能,这个包提供。
- -R:此程序包依赖列表功能..
4.如何安装没有依赖关系的RPM软件包
如果你知道所有需要的包都已经安装和RPM的只是愚蠢,你可以通过选项 -nodeps( 不依赖检查 )安装软件包之前忽略这些依赖关系。[root@youcl]# rpm -ivh --nodeps BitTorrent-5.2.2-1-Python2.4.noarch.rpm Preparing... ########################################### [100%] 1:BitTorrent ########################################### [100%]上述命令通过忽略依赖项错误强制安装rpm包,但如果这些依赖文件丢失,则程序将不会工作,直到您安装它们。
5.如何检查已安装的RPM软件包
使用带包名 -q选项,将显示是否安装或没有一个rpm。[root@youcl]# rpm -q BitTorrent BitTorrent-5.2.2-1.noarch
6.如何列出已安装的RPM软件包的所有文件
要查看已安装的rpm包中的所有文件,可以使用 -ql( 查询列表 )用rpm命令。[root@youcl]# rpm -ql BitTorrent /usr/bin/bittorrent /usr/bin/bittorrent-console /usr/bin/bittorrent-curses /usr/bin/bittorrent-tracker /usr/bin/changetracker-console /usr/bin/launchmany-console /usr/bin/launchmany-curses /usr/bin/maketorrent /usr/bin/maketorrent-console /usr/bin/torrentinfo-console
7.如何列出最近安装的RPM软件包
使用以下rpm命令与 -qa( 查询所有 )选项,将列出所有最近安装的rpm包。[root@youcl]# rpm -qa --last BitTorrent-5.2.2-1.noarch Tue 04 Dec 2012 05:14:06 PM BDT pidgin-2.7.9-5.el6.2.i686 Tue 04 Dec 2012 05:13:51 PM BDT cyrus-sasl-devel-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:06 PM BDT cyrus-sasl-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:05 PM BDT cyrus-sasl-md5-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:04 PM BDT cyrus-sasl-plain-2.1.23-13.el6_3.1.i686 Tue 04 Dec 2012 04:43:03 PM BDT
8.如何列出所有已安装的RPM软件包
键入以下命令以打印Linux系统上已安装软件包的所有名称。[root@youcl]# rpm -qa initscripts-9.03.31-2.el6.centos.i686 polkit-desktop-policy-0.96-2.el6_0.1.noarch thunderbird-17.0-1.el6.remi.i686
9.如何升级RPM软件包
如果我们想升级任何RPM软件包 “-U”( 升级 )选项将被使用。使用此选项的一个主要优点是它不仅将升级任何包的最新版本,而且还将维护旧包的备份,以便在新的升级包不运行先前安装的包时可以再次使用。[root@youcl]# rpm -Uvh nx-3.5.0-2.el6.centos.i686.rpm Preparing... ########################################### [100%] 1:nx ########################################### [100%]
10.如何删除RPM软件包
要卸载一个RPM包,比如我们使用的包名 NX,而不是原来的包名 NX-3.5.0-2.el6.centos.i686.rpm。 该 -e(清除)选项用于删除软件包。[root@youcl]# rpm -evv nx
11.如何删除没有依赖关系的RPM软件包
该 -nodeps( 不检查依赖性 )选项强行从系统中删除rpm包。但请记住,删除特定的包可能会破坏其他工作应用程序。[root@youcl]# rpm -ev --nodeps vsftpd
12.如何查询属于哪个RPM包的文件
让我们说,你有文件列表,你想知道哪个包属于这些文件。例如 ,-qf( 查询文件 )选项下面的命令将显示您的文件 在/ usr /斌/ htpasswd的被包 的httpd-工具2.2.15-15.el6.centos.1.i686自己。[root@youcl]# rpm -qf /usr/bin/htpasswd httpd-tools-2.2.15-15.el6.centos.1.i686
13.如何查询已安装的RPM软件包的信息
假设您已经安装了rpm包,并且想知道有关该包的信息。下面 -qi( 查询信息 )选项将打印已安装的软件包的可用信息。[root@youcl]# rpm -qi vsftpd Name : vsftpd Relocations: (not relocatable) Version : 2.2.2 Vendor: CentOS Release : 11.el6 Build Date: Fri 22 Jun 2012 01:54:24 PM BDT Install Date: Mon 17 Sep 2012 07:55:28 PM BDT Build Host: c6b8.bsys.dev.centos.org Group : System Environment/Daemons Source RPM: vsftpd-2.2.2-11.el6.src.rpm Size : 351932 License: GPLv2 with exceptions Signature : RSA/SHA1, Mon 25 Jun 2012 04:07:34 AM BDT, Key ID 0946fca2c105b9de Packager : CentOS BuildSystem <http://bugs.centos.org> URL : http://vsftpd.beasts.org/ Summary : Very Secure Ftp Daemon Description : vsftpd is a Very Secure FTP daemon. It was written completely from scratch.
14.安装之前获取RPM软件包的信息
您已从互联网下载一个包,并想在安装之前知道包的信息。例如,下面的选项 -qip( 查询信息包 )将打印包的信息 sqlbuddy 。[root@youcl]# rpm -qip sqlbuddy-1.3.3-1.noarch.rpm Name : sqlbuddy Relocations: (not relocatable) Version : 1.3.3 Vendor: (none) Release : 1 Build Date: Wed 02 Nov 2011 11:01:21 PM BDT Install Date: (not installed) Build Host: rpm.bar.baz Group : Applications/Internet Source RPM: sqlbuddy-1.3.3-1.src.rpm Size : 1155804 License: MIT Signature : (none) Packager : Erik M Jacobs URL : http://www.sqlbuddy.com/ Summary : SQL Buddy â Web based MySQL administration Description : SQLBuddy is a PHP script that allows for web-based MySQL administration.
15.如何查询已安装的RPM软件包的文档
为了得到一个安装软件包的可用文档的列表,请使用以下命令选项 -qdf( 查询文档文件),将显示相关的手册页 与vmstat包。[root@youcl]# rpm -qdf /usr/bin/vmstat /usr/share/doc/procps-3.2.8/BUGS /usr/share/doc/procps-3.2.8/COPYING /usr/share/doc/procps-3.2.8/COPYING.LIB /usr/share/doc/procps-3.2.8/FAQ /usr/share/doc/procps-3.2.8/NEWS /usr/share/doc/procps-3.2.8/TODO
16.如何验证RPM软件包
验证软件包会将软件包的已安装文件的信息与rpm数据库进行比较。该 -Vp( 校验包 )用于验证软件包。[root@youcl downloads]# rpm -Vp sqlbuddy-1.3.3-1.noarch.rpm S.5....T. c /etc/httpd/conf.d/sqlbuddy.conf
17.如何验证所有RPM包
键入以下命令以验证所有已安装的rpm软件包。[root@youcl]# rpm -Va S.5....T. c /etc/rc.d/rc.local .......T. c /etc/dnsmasq.conf .......T. /etc/ld.so.conf.d/kernel-2.6.32-279.5.2.el6.i686.conf S.5....T. c /etc/yum.conf S.5....T. c /etc/yum.repos.d/epel.repo
18.如何导入RPM GPG密钥
为了验证 RHEL / CentOS的/ Fedora的包,你必须导入 GPG密钥。 为此,请执行以下命令。 这将导入 的CentOS 6 GPG密钥。[root@youcl]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
19.如何列出所有导入的RPM GPG密钥
要打印系统中的所有导入的 GPG密钥,请使用以下命令。[root@youcl]# rpm -qa gpg-pubkey* gpg-pubkey-0608b895-4bd22942 gpg-pubkey-7fac5991-4615767f gpg-pubkey-0f2672c8-4cd950ee gpg-pubkey-c105b9de-4e0fd3a3 gpg-pubkey-00f97f56-467e318a gpg-pubkey-6b8d79e6-3f49313d gpg-pubkey-849c449f-4cb9df30
20.如何重建损坏的RPM数据库
有时rpm数据库被损坏,停止rpm和系统上的其他应用程序的所有功能。所以,在我们需要重建rpm数据库和恢复它与帮助下面的命令。[root@youcl]# cd /var/lib [root@youcl]# rm __db* [root@youcl]# rpm --rebuilddb [root@youcl]# rpmdb_verify Packages