• RPM包的使用


    不同yum安装源配置文件
    ls -l /etc/yum.repo.d

    RPM包的主包和子功能包
    mount /dev/cdrom /media/cdrom
    cd /media/cdrom/Packages
    ls rpm*
    rpm-4.8.0-32.el6.x86_64.rpm        rpm-devel-4.8.0-32.el6.x86_64.rpm  rpm-libs-4.8.0-32.el6.x86_64.rpm
    rpm-build-4.8.0-32.el6.x86_64.rpm  rpmdevtools-7.5-2.el6.noarch.rpm   rpmlint-0.94-2.el6.noarch.rpm
    rpm-devel-4.8.0-32.el6.i686.rpm    rpm-libs-4.8.0-32.el6.i686.rpm     rpm-python-4.8.0-32.el6.x86_64.rpm

    安装和删除RPM包

    rpm -i zsh-4.3.10-5.el6.x86_64.rpm    #-i 表示安装。NOKEY表示装的包,其来源合法性没验证
    rpm -e zsh                            #-e  表示卸载,包名即可,无需rpm名字。如果卸载前有文件被修改,则会加.rpmsave后续名来保留
    rpm -iv zsh-4.3.10-5.el6.x86_64.rpm   ##-v表示安装详情,-h表示安装进度
    rpm -ivvh zsh-4.3.10-5.el6.x86_64.rpm #-vv表示安装详情。包括 合法性验证、rpm包内文件列表、数据库更新、脚本安装
    rpm -ivh --test mysql-5.1.66-2.el6_3.x86_64.rpm  #--test测试是否可安装
    rpm -ivh --nodeps libvirt-devel-0.10.2-18.el6.i686.rpm     #--nodeps表示安装时忽略依赖的包,注意很可能影响使用


    查询包


    包的信息
    rpm -q zsh #包是否已安装(-q)
    rpm -qa | wc -l #所有(-a)的包
    rpm -qa | grep java
    rpm -qi zsh #包的信息(-i)
    rpm -ql zsh #包内的所有文件(-l)
    rpm -qc zsh #包内的配置文件(-c)
    rpm -qd zsh #包内的文档文件(-d)
    rpm -q --scripts zsh #包内含安装前/后,卸载前/后的脚本
    rpm -qf /etc/fstab #查看文件是由哪个安装包提供的
    rpm -qpi java-1.7.0-openjdk-devel-1.7.0.9-2.3.4.1.el6_3.x86_64.rpm #未安装包(-p)的信息,(常与-l、-c、-d、--scripts选项结合)


    查看已安装文件发生什么变化
    vim /etc/zshrc 
    tail -n 1 /etc/zshrc 
    #my name is tangsw
    rpm -V zsh
    S.5....T.  c /etc/zshrc
    -----------这些标志位的解析----------
    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


    包的公钥

     
    导入公钥
    cd /media/cdrom/Packages
    rpm --import RPM-GPG-KEY-CentOS-6
    cd Packages/
    rpm -ivh zsh-4.3.10-5.el6.x86_64.rpm     #导入核心包的公钥后,安装时再无提示安装合法性问题

    查看公钥
    rpm -qa gpg-pubkey* #查看导入的公钥
    rpm -qi gpg-pubkey-c105b9de-4e0fd3a3 #-i查看公钥信息
    rpm -e gpg-pubkey-c105b9de-4e0fd3a3 删除公钥

    检查包的合法性(-K)
    1.自动检查
    见上面的"rpm -ivh rpm包名"命令输出结果
    2.手动检查。有无导入公钥的区别
    rpm -K zsh-4.3.10-5.el6.x86_64.rpm 
    提示缺少密钥。((MD5) PGP)前者表示单向加密、后者表示公钥加密
    rpm --import ../RPM-GPG-KEY-CentOS-6
    rpm -K zsh-4.3.10-5.el6.x86_64.rpm 
    3.不检查合法性(--nosignature),不检查完整性(--nodigest)
    rpm -K --nosignature zsh-4.3.10-5.el6.x86_64.rpm 347
    rpm -K --nodigest zsh-4.3.10-5.el6.x86_64.rpm 


    包数据库

    cd /var/lib/rpm/
    ls -l
    total 51568
    -rw-r--r--. 1 root root  5013504 Sep 16 15:06 Basenames
    -rw-r--r--. 1 root root    12288 Sep 13 02:56 Conflictname
    -rw-r--r--. 1 root root    24576 Sep 16 15:25 __db.001            #__db是临时文件,不用管
    -rw-r--r--. 1 root root   229376 Sep 16 15:25 __db.002
    -rw-r--r--. 1 root root  1318912 Sep 16 15:25 __db.003
    -rw-r--r--. 1 root root   753664 Sep 16 15:25 __db.004
    -rw-r--r--. 1 root root  1056768 Sep 16 15:06 Dirnames
    -rw-r--r--. 1 root root  5251072 Sep 16 15:06 Filedigests
    -rw-r--r--. 1 root root    20480 Sep 16 15:14 Group                #包组
    -rw-r--r--. 1 root root    20480 Sep 16 15:14 Installtid           #包的ID
    -rw-r--r--. 1 root root    45056 Sep 16 15:14 Name                 #包名字
    -rw-r--r--. 1 root root    24576 Sep 13 02:57 Obsoletename
    -rw-r--r--. 1 root root 39669760 Sep 16 15:14 Packages             #安装了哪些包
    -rw-r--r--. 1 root 7  1306624 Sep 16 15:14 Providename
    -rw-r--r--. 1 root root   643072 Sep 16 15:14 Provideversion
    -rw-r--r--. 1 root root    12288 Sep 16 15:14 Pubkeys              #导入哪些公钥
    -rw-r--r--. 1 root root   446464 Sep 16 15:06 Requirename
    -rw-r--r--. 1 root root   249856 Sep 16 15:06 Requireversion
    -rw-r--r--. 1 root root    86016 Sep 16 15:06 Sha1header
    -rw-r--r--. 1 root root    77824 Sep 16 15:06 Sigmd5
    -rw-r--r--. 1 root root    12288 Sep 13 02:56 Triggername

    rpm --initdb #--initdb没有库重建,有库不重建
    rpm --rebuilddb #--rebuilddb直接重建,覆盖原有的库








  • 相关阅读:
    h5 在全屏iphonex中的适配
    http响应状态码301和302
    http协议
    画图-drawpoint and drawpath
    Android-自己定义meta-data扩展数据
    iOS应用公布Invalid Binary问题解决方式
    在线工具集合(新增cron quartz表达式在线生成……)
    SSH 占用数据库连接不释放问题
    Oracle数据库获取uuid函数
    Android Message handling (based on KK4.4)
  • 原文地址:https://www.cnblogs.com/tsw1107/p/52b1299bd374c39f8a8687b9e9db86d9.html
Copyright © 2020-2023  润新知