linux-RPM包使用小结

一) 什么是RPM?node

    Redhat Package Manager的简称,就是包管理工具,它是linux中使用安装最简便的一种包管理工具。linux

rpm 执行安装包有两种:
二进制包(Binary):二进制包能够直接安装在计算机中
安全

源代码包(Source):源代码包将会由RPM自动编译、安装。源代码包常常以src.rpm做为后缀架构

rpm包管理通常由如下几个内容组成:即,安装   查询    卸载   升级   校验  库重建等组成。ide

rpm包的名称通常由包名、版本、子版本以及所支持的架构名这基本分组成工具

咱们先来看下man rpm测试

wKioL1PU0v-CdCfVAAH_4WpttxQ688.jpg


二)  RPM命令的使用总结:   ui

  1)  安装程序包:rpm  [选项]  文件路径spa

         经常使用选项              -i :  安装文件
3d

                                    -v:: 查看附加信息

                                   -vv: 显示调试信息

                                    -h::安装时输出hash记号

                                --test:仅用做测试,并不实际安装。

            一般的状况下,-ivh 一块儿使用,这样可以比较清楚的显示安装的文件信息。

    有的状况须要从新安装,怎么安装呢?

                rpm   --replacepkgs    文件路径

                从新安装时,若是原有的配置文件被修改了,则颇有可能不执行替换, 而是将应该安装生成的配置文件重命名为 .rpmnew

    2)查询操做:我以gcc包为例

                查询全部已经安装的包:                       rpm  -qa

wKiom1PUz4yAZmIxAACdfrYmAEA591.jpg这里我查询的是gcc包的安装状况

gcc 是包名,4.4.7是版本号,4.e16是小版本号,x86_64是架构


        查询某个包是否被安装:         rpm -q  包名

wKiom1PU0BrCGLw6AAA71b_u9_c556.jpg显示已经安装


        查询某个包的描述信息:         rpm -qi 包名

wKiom1PU0HHSptkCAAMvvPkTj3I159.jpg

        查询某个包生成了那些配置文件: rpm -qc 包名

        wKiom1PU0SHwjU8-AACKvuiTGCE944.jpg这里我查询的是yum包的配置文件

        查询某个包生成了那些帮助文件: rpm -qd 包名

wKioL1PU0ezxWdooAAGPvYWyunc571.jpg我只列出部分而已

        查询与莫个包相关的脚本:       rpm -q --scripts 包名

        查询某个文件是由哪一个包生成的: rpm -qf 文件路径

wKiom1PU2o3D3VKOAABUfFIV_I8628.jpg

  3)卸载程序包

        rpm -e [选项] 包名   

           选项有:

                 --test 只执行删除的测试  
                                  --noscripts 不运行预安装和后安装脚本程序  
                                  --nodeps 不检查依赖性 

                                    没有加选项 --nodeps  意味着,连同与该包有依赖关系的包一同卸载

     4)升级程序包

                    

           rpm [选项] 包的路经

                    升级或安装    -Uvh

                    纯升级        -Fvh    

                -F 是强制升级的意思 -v -h 和前面的安装选项同样

  5)校验操做,校验的目的就是查询包安装生成的文件属性是否发生改变。

            rpm -V 包名

wKiom1PU0lSinQGMAAA4S7qtTOA834.jpg

    选项有:   

        S: 指示文件大小变动

        M: 指示文件权限、文件类型变动

        5: 指示MD5值变动

        D: 指示主/备设备号变动

        L: 指示链接变动

        U: 指示属主变动

        G: 指示属组变动

        T: 指示修改时间变动

    其中没有修改的部分用 . 表示

  6)包来源合法性与完整性的校验,对于系统安全性相当重要 

                   首先你要导入包制做者的公钥

                        rpm --import 公钥路径

                    校验包中的文件:

                        rpm -K 包文件路径

                    其中若是不检查包的完整性

                        rpm -K --nodigest

                    不检查包的来源合法性

                        rpm -K --nosignature

                        --nopgp 不校验PGP签名

    7)库重建:首先库重建的默认目录为 /var/lib/rpm

            库重建有两种状况:

                    1 若是原先没有库,则创建一个库,若是有,则不创建新的库,用命令:

                                                 rpm --initdb      

                    2无论原先有没有库,都创建一个,有则覆盖,没有则新建,使用命令:

                                                rpm --rebuilddb

相关文章
相关标签/搜索