rpm包管理详解(2)
来源:互联网 发布:做淘宝客服需要交钱吗 编辑:程序博客网 时间:2024/06/06 16:01
转自: http://blog.csdn.net/dingyuanpu/article/details/5572302
本节接着介绍rpm的查询功能,查询是我们最常用的功能,例如查询一个包里包含哪些文件、一个文件属于哪个包、以及包之间的依赖关系等等。
rpm的-q参数是用来进行查询的,需要明确的是rpm既可以对安装在系统上的包进行查询,也可以对一个未安装的rpm包进行查询。当一个rpm包安装到系统上之后,安装信息通常会保存在本地的/var/lib/rpm/目录下,数据会以berkeley DB的方式保存。查看/var/lib/rpm/Packages文件的类型可以验证这一点。
[leconte@localhost rpm]$ file /var/lib/rpm/Packages/var/lib/rpm/Packages: Berkeley DB (Hash, version 8, native byte-order)
这种情况下的查询其实就是对bdb的读访问。而对一个未安装的rpm包进行查询,则是通过解读rpm包本身而获取信息,这一点是首先需要明确的。
下面我就简单罗列一下rpm最常用的几个查询功能
1.rpm -qa 用来查询系统安装的所有包,a代表all
2.rpm -ql [包名] 用来查询某个包里的文件列表,例如查询包passwd里包含的内容
[leconte@localhost rpm]$ rpm -ql passwd/etc/pam.d/passwd/usr/bin/passwd/usr/share/man/man1/passwd.1.gz
3.rpm -qi [包名] 用来查询包信息,其中包含包的介绍,作者,打包日期等重要信息。
4.rpm -qf [文件名] 用来查询一个文件所属的rpm包,例如:
[leconte@localhost rpm]$ rpm -qf /etc/passwdsetup-2.5.58-4.el5
系统配置文件/etc/passwd是属于setup这个包的。
5.rpm -qV [包名] 用来验证某个包中安装的各文件的状态,如果当前文件的大小、md5和安装时数据库里保存的信息不一致,该命令则会将不一致的文件列出来。该命令对于系统出问题的情况下的故障排查很有帮助。
上面是几个最常用的查询命令,都是针对查询系统rpm包情况的。如果要查询未安装的rpm包则只需要加上p参数和包路径即可。例如查询包perl-Git-1.5.5.6-4.el5.i386.rpm的信息:
[leconte@localhost soft]$ rpm -qip perl-Git-1.5.5.6-4.el5.i386.rpmwarning: perl-Git-1.5.5.6-4.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 217521f6Name : perl-Git Relocations: (not relocatable)Version : 1.5.5.6 Vendor: Fedora ProjectRelease : 4.el5 Build Date: 2009年06月19日 星期五 21时28分05秒Install Date: (not installed) Build Host: xenbuilder2.fedora.redhat.comGroup : Development/Libraries Source RPM: git-1.5.5.6-4.el5.src.rpmSize : 24878 License: GPLSignature : DSA/SHA1, 2009年06月20日 星期六 04时07分18秒, Key ID 119cc036217521f6Packager : Fedora ProjectURL : http://kernel.org/pub/software/scm/git/Summary : Perl interface to GitDescription :Perl interface to Git.
- rpm包管理详解(2)
- rpm包管理详解(2)
- rpm包管理详解
- rpm包管理详解
- rpm 包 管理 详解
- RPM包管理详解
- rpm包管理详解(1)
- rpm包管理详解(3)
- rpm包管理详解(4)
- rpm包管理详解(1)
- rpm包管理详解(3)
- rpm包管理详解(4)
- 使用RPM管理包
- linux rpm包管理
- RPM包管理
- RPM包管理简介
- rpm包的管理
- RPM包管理
- spring的jsr 303小例子
- 输出菱形
- Intervals 【区间差分约束】基础
- hdu1317—XYZZY(floyed+Bellman-Ford)
- iOS 如何录制mixer unit 的输出
- rpm包管理详解(2)
- 1168: 复数加法
- NamedParameterJdbcTemplate
- mathtype错误文件未找到MathPage.WLL
- rpm包管理详解(3)
- java基础--两种简单的死循环程序
- Java遍历Map的几种方法
- 个人博客项目笔记
- 数位dp(涉及到处理前导0问题)