• rpm命令参数(转载)


    rpm 执行安装包

    二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。

    还不清楚具体有啥用,只知道可以检查一个软件是否安装。比如: rpm -qa |grep rsync
    -i, --install install package(s)
    -v, --verbose provide more detailed output
    -h, --hash print hash marks as package installs (good with -v)
    -e, --erase erase (uninstall) package
    -U, --upgrade=<packagefile>+ upgrade package(s)
    --replacepkge 无论软件包是否已被安装,都强行安装软件包
    --test 安装测试,并不实际安装
    --nodeps 忽略软件包的依赖关系强行安装
    --force 忽略软件包及文件的冲突

    -----------------------

    •安装一个rpm包

    rpm -ivh 名称包.rpm

    •升级一个rpm包
    rpm -Uvh 名称包.rpm

    •回退一个rpm包

    rpm -Uvh --oldpackage 名称包.rpm

    •查看 rpm 包信息 rpm-qpi xxxxx.rpm
    •查看 rpm 包依赖 rpm -qpR xxxxx.rpm
    •查看 rpm 包中包含那些文件 rpm -qlp xxxxx.rpm 可以加grep搜索 rpm -qlp xxxxx.rpm|grep spec

    -----------------------

    Query options (with -q or --query):
    -a, --all query/verify all packages
    -p, --package query/verify a package file
    -l, --list list files in package
    -d, --docfiles list all documentation files
    -f, --file query/verify package(s) owning file
    命令格式
    rpm {-q|–query} [select-options] [query-options]
    RPM的查询功能是极为强大,是极为重要的功能之一;举几个常用的例子,更为详细的具体的,请参考#man rpm
    1、对系统中已安装软件的查询;
    1)查询系统已安装的软件;
    语法:rpm -q 软件名
    举例:
    [root@localhost beinan]# rpm -q gaim
    gaim-1.3.0-1.fc4
    -q就是 –query ,中文意思是“问”,此命令表示的是,是不是系统安装了gaim ;如果已安装会有信息输出;如果没有安装,会输出gaim 没有安装的信息;
    查看系统中所有已经安装的包,要加 -a 参数 ;
    [root@localhost RPMS]# rpm -qa
    如果分页查看,再加一个管道 |和more命令;
    [root@localhost RPMS]# rpm -qa |more
    在所有已经安装的软件包中查找某个软件,比如说 gaim ;可以用 grep 抽取出来;
    [root@localhost RPMS]# rpm -qa |grep gaim
    上面这条的功能和 rpm -q gaim 输出的结果是一样的;
    2)查询一个已经安装的文件属于哪个软件包;
    语法 rpm -qf 文件名

    或:查找命令属于哪个rpm包
    例:rpm -qf `which ps`

    注:文件名所在的绝对路径要指出
    举例:
    [root@localhost RPMS]# rpm -qf /usr/lib/libacl.la
    libacl-devel-2.2.23-8
    3)查询已安装软件包都安装到何处;
    语法:rpm -ql 软件名 或 rpm rpmquery -ql 软件名
    举例:
    [root@localhost RPMS]# rpm -ql lynx
    [root@localhost RPMS]# rpmquery -ql lynx
    4)查询一个已安装软件包的信息
    语法格式: rpm -qi 软件名
    举例:
    [root@localhost RPMS]# rpm -qi lynx
    5)查看一下已安装软件的配置文件;
    语法格式:rpm -qc 软件名
    举例:
    [root@localhost RPMS]# rpm -qc lynx
    6)查看一个已经安装软件的文档安装位置:
    语法格式: rpm -qd 软件名
    举例:
    [root@localhost RPMS]# rpm -qd lynx
    7)查看一下已安装软件所依赖的软件包及文件;
    语法格式: rpm -qR 软件名
    举例:
    [root@localhost beinan]# rpm -qR rpm-python
    查询已安装软件的总结:对于一个软件包已经安装,我们可以把一系列的参数组合起来用;比如 rpm -qil ;比如:
    [root@localhost RPMS]# rpm -qil lynx
    删除一个rpm 包;
    首先您要学会查询rpm 包 ;请看前面的说明;
    [root@localhost beinan]#rpm -e 软件包名
    举例:我想移除lynx 包,完整的操作应该是:
    [root@localhost RPMS]# rpm -e lynx
    如果有依赖关系,您也可以用–nodeps 忽略依赖的检查来删除。但尽可能不要这么做,最好用软件包管理器 systerm-config-packages 来删除或者添加软件;
    [root@localhost beinan]# rpm -e lynx –nodeps

    常用命令组合:


    -ivh:安装显示安装进度--install--verbose--hash
    -Uvh:升级软件包--Update;
    -qpl:列出RPM软件包内的文件信息[Query Package list];
    -qpi:列出RPM软件包的描述信息[Query Package install package(s)];
    -qf:查找指定文件属于哪个RPM软件包[Query File];
    -Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
    -e:删除包

    rpm -q samba //查询程序是否安装

    rpm -ivh /media/cdrom/RedHat/RPMS/samba-3.0.10-1.4E.i386.rpm //按路径安装并显示进度
    rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm //指定安装目录

    rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm    //用来检查依赖关系;并不是真正的安装;
    rpm -Uvh --oldpackage gaim-1.3.0-1.fc4.i386.rpm //新版本降级为旧版本

    rpm -qa | grep httpd      #[搜索指定rpm包是否安装]--all搜索*httpd*
    rpm -ql httpd         #[搜索rpm包]--list所有文件安装目录

    rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息
    rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file
    rpm -qpR file.rpm       #[查看包]依赖关系
    rpm2cpio file.rpm |cpio -div #[抽出文件]

    rpm -ivh file.rpm  #[安装新的rpm]--install--verbose--hash
    rpm -ivh

    rpm -Uvh file.rpm #[升级一个rpm]--upgrade
    rpm -e file.rpm #[删除一个rpm包]--erase


    常用参数:

    Install/Upgrade/Erase options:

    -i, --install install package(s)
    -v, --verbose provide more detailed output
    -h, --hash print hash marks as package installs (good with -v)
    -e, --erase erase (uninstall) package
    -U, --upgrade=<packagefile>+ upgrade package(s)
    --replacepkge 无论软件包是否已被安装,都强行安装软件包
    --test 安装测试,并不实际安装
    --nodeps 忽略软件包的依赖关系强行安装
    --force 忽略软件包及文件的冲突

    Query options (with -q or --query):
    -a, --all query/verify all packages
    -p, --package query/verify a package file
    -l, --list list files in package
    -d, --docfiles list all documentation files
    -f, --file query/verify package(s) owning file

    ●中文说明
    -a:查询所有套件;
    -b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
    -c:只列出组态配置文件,本参数需配合"-l"参数使用;
    -d:只列出文本文件,本参数需配合"-l"参数使用;
    -e<套件档>或--erase<套件档>:删除指定的套件;
    -f<文件>+:查询拥有指定文件的套件;
    -h或--hash:套件安装时列出标记;
    -i:显示套件的相关信息;
    -i<套件档>或--install<套件档>:安装指定的套件档;
    -l:显示套件的文件列表;
    -p<套件档>+:查询指定的RPM套件档;
    -q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
    -R:显示套件的关联性信息;
    -s:显示文件状态,本参数需配合"-l"参数使用;
    -U<套件档>或--upgrade<套件档>:升级指定的套件档;
    -v:显示指令执行过程;
    -vv:详细显示指令执行过程,便于排错。
     

    RPM源代码包装安装

    .src.rpm结尾的文件,这些文件是由软件的源代码包装而成的,用户要安装这类RPM软件包,必须使用命令:

    rpm --recompile vim-4.6-4.src.rpm #这个命令会把源代码解包并编译、安装它,如果用户使用命令:

    rpm --rebuild vim-4.6-4.src.rpm  #在安装完成后,还会把编译生成的可执行文件重新包装成i386.rpm的RPM软件包。

    ------山的那一边
  • 相关阅读:
    Codeforces Round #384 (Div. 2) 解题报告
    Codeforces Round #383 (Div. 2) 解题报告
    (DFS、bitset)AOJ-0525 Osenbei
    (DFS、全排列)POJ-3187 Backward Digit Sums
    自考新教材-p169
    自考新教材-p167
    自考新教材-p166
    自考新教材-p165
    自考新教材-p161
    自考新教材-p159
  • 原文地址:https://www.cnblogs.com/mountain2011/p/8944119.html
Copyright © 2020-2023  润新知