Chinaunix首页 | 论坛 | 博客
  • 博客访问: 522119
  • 博文数量: 53
  • 博客积分: 2265
  • 博客等级: 大尉
  • 技术积分: 574
  • 用 户 组: 普通用户
  • 注册时间: 2007-08-15 16:50
文章分类

全部博文(53)

文章存档

2019年(1)

2018年(2)

2016年(2)

2015年(1)

2014年(6)

2013年(5)

2012年(7)

2011年(16)

2010年(13)

分类: LINUX

2010-12-30 14:37:24

   QUERYING AND VERIFYING PACKAGES:
       rpm {-q|--query} [select-options] [query-options]

       rpm {-V|--verify} [select-options] [verify-options]

       rpm --import PUBKEY ...

       rpm {-K|--checksig} [--nosignature] [--nodigest]
           PACKAGE_FILE ...

   INSTALLING, UPGRADING, AND REMOVING PACKAGES:
       rpm {-i|--install} [install-options] PACKAGE_FILE ...

       rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...

       rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

       rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts]
           [--notriggers] [--repackage] [--test] PACKAGE_NAME ...

 

rpm 分为几大部分,query,install(upgrade,erase)

每部分的参数虽然相同,但含义不一样,man下有结果。看下小事例:

1、我的系统中安装了那些rpm软件包
    rpm -qa 将列出所有安装过的包。
    如果要查找所有安装过的包含某个字符串“sql”的软件包,命令如下:
    rpm -qa |grep sql

    2、如何获得某个软件包的文件全名
    rpm -q mysql 可以获得系统中安装的mysql软件包全名,从中可以获得当前软件包的版本等信息。这个例子中可以得到信息 mysql-5.0.77-4.el5_5.3。

    3、一个rpm包中的文件安装到哪里去了?
    rpm -ql 包名
    注意这里的包名是不包括.rpm 后缀的软件包的名称,也就是说只能用mysql或者mysql-5.0.77-4.el5_5.3,而不是mysql-5.0.77-4.el5_5.3.rpm。
    如果只是想知道可执行程序放到那里去了,也可以用which命令,比如:
    [root@localhost ~]# which mysql
    /usr/bin/mysql
    也可以用 whereis 命令:
    [root@localhost ~]# whereis mysql
    mysql: /usr/bin/mysql
           /usr/lib/mysql
           /usr/share/mysql
           /usr/share/man/man1/mysql.1.gz

    4、一个rpm包中包含那些文件
    一个没有安装过的软件包,使用命令 rpm -qlp 包名.rpm。
    一个已经安装过的软件包,还可以使用命令 rpm -ql 包名。

    5、如何获取一个软件包的版本,用途等相关信息
    一个没有安装过的软件包,使用命令 rpm -qip 包名.rpm。
    一个已经安装过的软件包,还可以使用命令 rpm -qi 包名。

    6、某个程序是哪个软件包安装的,或者哪个软件包包含这个程序
    rpm -qf `which 程序名`  #返回软件包的全名
    rpm -qif `which 程序名`  #返回软件包的有关信息
    rpm -qlf `which 程序名`   #返回软件包的文件列表
    注意,这里不是引号,而是`,就是键盘左上角的那个键。也可以使用rpm -qilf,同时输出软件包信息和文件列表。

    7、某个文件是哪个软件包安装的,或者哪个软件包包含这个文件
    注意,前一个问题中的方法,只适用于可执行的程序,而下面的方法,不仅可以用于可执行程序,也可以用于普通的任何文件。前提是知道这个文件名。
    首先获得这个程序的完整路径,可以用whereis或者which命令,然后使用 rpm -qf 命令,例如:
    [root@localhost home]# whereis webmin
    webmin: /etc/webmin /usr/libexec/webmin
    [root@localhost home]# rpm -qf /usr/libexec/webmin
    webmin-1.510-1

    检查 软件的安装信息:

[root@centos ~]# rpm -qif `which opera`
Name        : opera                        Relocations: (not relocatable)
Version     : 11.00                             Vendor: Opera Software ASA
Release     : 1156                          Build Date: Wed 15 Dec 2010 11:59:02 PM CST
Install Date: Thu 23 Dec 2010 02:54:23 PM CST      Build Host: p22-03-V01.oslo.opera.com
Group       : Applications/Internet         Source RPM: opera-11.00-1156.src.rpm
Size        : 30873428                         License: Proprietary
Signature   : (none)
Packager    : Opera Packaging Team <>
URL         :
Summary     : A fast and secure web browser and Internet suite

 

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/namesliu/archive/2010/11/12/6004388.aspx

 


 

阅读(12235) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~