rpm命令使用

rpm命令

rpm [options] PACKAGE_FILE ...
    常用选项     
        -i --install 安装
        -U --update 升级
        -e --erase  卸载
        -q --query  查询
        -V verify   校验
        --rebuilddb --initdb 构建数据库
`

程序安装

rpm {-i|--install} [install-options] PACKAGE_FILE ...

GENERAL OPTION
    -v 显示详细信息
    -vv 更详细的信息                    
install-options
    -h :输出进度条,每个#表示2%的进度
    --test 测试安装
    --nodeps 忽略依赖关系
    --replacepkgs 重新安装
    --nosignature 不检查包签名信息,不检查包来源合法性
    --nodigest 不检查程序包的完整性

程序升级

rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
升级或安装,如果系统中没有指定的程序则执行安装操作

rpm {-F|--freshen} [install-options] PACKAGE_FILE ...
如果系统没有指定的程序则不做任务操作
    常用选项
        --oldpackage 降级安装
        --force 强制升级

程序删除

rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts][--notriggers] [--test] PACKAGE_NAME ...
    常用选项
        --allmatches 下载所有匹配指定名称的程序包的各版本
        --nodeps 忽略依赖关系
        --test 测试卸载,dry run 模式

程序查询

rpm {-q|--query} [select-options] [query-options]
    [select-options]
        PACKAGE_NAME:查询指定的程序包是否已经安装和查询版本
        -a --all: 查询所有已经安装过的程序包
        -f FILE :查询指定的文件有那个程序包安装生成
        -p, --package PACKAGE_FILE:用于对未安装的程序包执行查询操作
            rpm -qpl -qpi -qpc .... PACKAGE_FILE

        --whatprovides CAPABILITY 查询指定的CAPABILITY由哪个程序包提供
        --whatrequires CAPABILITY 查询指定的CAPABILITY有哪个程序包所依赖
    [query-options]
        --changelog 查询rpm包的changelog
        -l --list 程序包安装生成的文件列表
        -i --info 查询程序包相关的信息
        -c --configfiles 查询指定程序包对应的配置文件
        -d --docfile 查询指定程序包对应的文档
        --provides 列出指定程序包提供的所有CAPABILITY
        -R --requires 查询指定程序包的依赖关系
        --scripts 查看程序包自带的脚本片段

程序校验

rpm {-V|--verify} [select-options] [verify-options] PACKAGE_NAME
    [root@localhost ~]# rpm -V tcsh
    S.5....T.  d /usr/share/doc/tcsh-6.18.01/BUGS

    S file Size differs
    M Mode differs (includes permissions and file type)
    5 digest (formerly MD5 sum) differs
    D Device major/minor number mismatch
    L readLink(2) path mismatch
    U User ownership differs
    G Group ownership differs
    T mTime differs
    P caPabilities differ

包来源合法性验证和完整性验证

验证方法
    1,获取并导入信任的包制作者的密钥
        rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
        安装此组织签名的程序时,会自动执行验证
    2,手动验证 
        rpm -K PACKAGE_FILE

数据库重建

rpm管理器数据库路径:/var/lib/rpm/,查询操作就是通过此处的数据库进行

获取命令帮助
    centos 6 :man rpm 
    centos 7 :man rpmdb 

rpm {--initdb|--rebuilddb}    
    --initdb 事先无数据库时,可初始化创建一个,当前有时,不执行操作
    --rebuilddb 重新构建数据库
    --dbpath 指明数据库路径

rpm命令使用示例

安装

[root@localhost Packages]# rpm -ivh zsh-5.0.2-14.el7.x86_64.rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:zsh-5.0.2-14.el7                 ################################# [100%]

查询

[root@localhost Packages]# rpm -qf /bin/zsh
zsh-5.0.2-14.el7.x86_64

[root@localhost Packages]# rpm -ql zsh
/bin/zsh
/etc/skel/.zshrc
/etc/zlogin
/etc/zlogout
......

[root@localhost Packages]# rpm -qi zsh
Name        : zsh
Version     : 5.0.2
Release     : 14.el7
Architecture: x86_64
Install Date: Sun 10 Jun 2018 02:10:07 PM CET
Group       : System Environment/Shells
Size        : 5834871
License     : MIT
Signature   : RSA/SHA256, Wed 25 Nov 2015 05:07:38 PM CET, Key ID 24c6a8a7f4a80eb5
Source RPM  : zsh-5.0.2-14.el7.src.rpm
Build Date  : Fri 20 Nov 2015 02:11:36 PM CET
Build Host  : worker1.bsys.centos.org
Relocations : (not relocatable)
Packager    : CentOS BuildSystem <http://bugs.centos.org>
Vendor      : CentOS
URL         : http://zsh.sourceforge.net/
Summary     : Powerful interactive shell
Description :
The zsh shell is a command interpreter usable as an interactive login
shell and as a shell script command processor.  Zsh resembles the ksh
shell (the Korn shell), but includes many enhancements.  Zsh supports
command line editing, built-in spelling correction, programmable
command completion, shell functions (with autoloading), a history
mechanism, and more.

[root@localhost Packages]# rpm -qc zsh
/etc/skel/.zshrc
/etc/zlogin
/etc/zlogout
/etc/zprofile
/etc/zshenv
/etc/zshrc

程序校验

[root@localhost Packages]# rpm -V zsh
S.5....T.  c /etc/zlogout

程序合法性验证

[root@localhost Packages]# rpm -K zsh-5.0.2-14.el7.x86_64.rpm
zsh-5.0.2-14.el7.x86_64.rpm: rsa sha1 (md5) pgp md5 OK

卸载

[root@localhost Packages]# rpm -evh zsh
Preparing...                          ################################# [100%]
Cleaning up / removing...
   1:zsh-5.0.2-14.el7                 ################################# [100%]

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/100811

(0)
dyzhoudyzhou
上一篇 2018-06-10 21:31
下一篇 2018-06-10 21:44

相关推荐

  • N30-bash特性以及Linux文件管理常用命令汇总

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理类命令:cat,tac,head,tail,more,less 分屏查看命令:more,less more:more FILE特点,翻盘至文件尾部后自动退出 less FILE head:查看文件的前n行head [options] FILE-n 数字-数字 tail:查看…

    Linux笔记 2018-05-26
  • Linux 的用户、文件管理和权限

    Linux文件系统上的特殊权限 可执行文件上SUID权限   目录上的SGID权限 sticky 特殊权限数字法: 权限位映射: 设定文件的特定属性: 访问控制列表: 访问控制列表: 访问控制列表:        

    Linux笔记 2018-04-08
  • lvs(linux virtual server)、keepalived

    Linux Cluster: httpd: ab,  benchmark; 系统的扩展方式: Scale up:向上扩展; 提供性能更好的服务器替代现有的服务器; Scale out:向外扩展; 提供更多的服务器来满足同一个需求; 集群:将多台主机组织起来满足某一特定需求; 集群类型: 1、LB:Load Balancing, 负载均衡集群; 负载均衡器,调…

    2018-07-05
  • Linux 文本工具

    grep

    2018-04-11
  • 运维自动化之系统部署

    运维自动化之系统部署 安装程序 CentOS系统安装 系统启动流程: bootloader–>kernel(initramfs)–>rootfs–>/sbin/init   anaconda: 系统安装程序 gui:图形窗口 tui: 基于图形库curses的文本窗口   &nbs…

    Linux笔记 2018-05-27
  • linux练气篇

    1、描述计算机的组成及其功能。
    2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。
    3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。
    4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相应的示例来阐述。
    5、如何在Linux系统上获取命令的帮助信息,请详细列出,并描述man文档的章节是如何划分的。
    6、请罗列Linux发行版的基础目录名称命名法则及功用规定

    Linux笔记 2018-05-12