包管理之包查询,包校验,rpm数据库.yum的详细用法及说明

一.概述

包查询

rpm {-q|–query} [select-options] [query-options]

[select-options]

-a: 所有包

-f: 查看指定的文件由哪个程序包安装生成

-p rpmfile:针对尚未安装的程序包文件做查询操作;

–whatprovides CAPABILITY:查询指定的CAPABILITY由哪个包所提供

–whatrequires CAPABILITY:查询指定的CAPABILITY被哪个包所依赖

rpm2cpio 包文件|cpio–itv预览包内文件

rpm2cpio 包文件|cpio–id “*.conf”释放包内文件

[query-options]

–changelog:查询rpm包的changelog

blob.png

-c: 查询程序的配置文件

blob.png

-d: 查询程序的文档

blob.png

-i: information

blob.png

-l: 查看指定的程序包安装后生成的所有文件;

blob.png

–scripts:程序包自带的脚本片断

blob.png

-R: 查询指定的程序包所依赖的CAPABILITY;

blob.png

–provides: 列出指定程序包所提供的CAPABILITY;

blob.png

查询用法:

-qi PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE

-qpi PACKAGE_FILE, -qpl PACKAGE_FILE, …

-qa

卸载

rpm {-e|–erase} [–allmatches] [–nodeps]不考虑依赖性

[–noscripts] [–notriggers] [–test] PACKAGE_NAME …

blob.png

包校验

blob.png

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

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 mTimediffers

P capabilities differ

blob.png

例:

blob.png

修改一个包里面的文件

blob.png

blob.png将修改过的内容改正回来

blob.png

包来源合法性验正及完整性验正:

完整性验正:SHA256

来源合法性验正:RSA

公钥加密:

对称加密:加密、解密使用同一密钥;

非对称加密:密钥是成对儿的

public key: 公钥,公开所有人

secret key: 私钥, 不能公开

导入所需要公钥:

rpm -K|checksigrpmfile检查包的完整性和签名

rpm –import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

CentOS 7发行版光盘提供:RPM-GPG-KEY-CentOS-7

卸载 rpm -qa gpg-pubkey*

blob.png

rpm数据库

数据库重建:

/var/lib/rpm

rpm {–initdb|–rebuilddb}

initdb: 初始化

如果事先不存在数据库,则新建之

否则,不执行任何操作

rebuilddb:重建

无论当前存在与否,直接重新创建数据库

yum 解决包依赖性的工具

CentOS: yum, dnf

YUM: YellowdogUpdate Modifier,rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包,up2date的替代工具

yum repository: yum repo,存储了众多rpm包,以及包的相关的元数据文件(放置于特定目录repodata下)

文件服务器:

ftp://

http://

file:///

yum客户端:

     配置文件:

        /etc/yum.conf

        /etc/yum.conf.d/*.repo

    仓库指向的定义:

    [repositoryID]

    name= some name for tiis repository

    baseurl=url://path.to/repository/

    ecabled={1|0}       

    gpgcheck={1|0}

    repo_gpgcheck={1|0}

    gpgkey=URL

    enablegroup={1|0}

    failovermethod={roundrobin|priority}

        默认:roundrobin ,意为随机挑选

    cost=

    默认为1000

    

显示仓库列表

    repolist [all|enabled|disabled]

显示程序包

    list

     # yum list [all|glob_exp1 [glob_exp2] […]

     # yum list {available|installed|updates}[glob_exp1][…]

安装程序包:

    install package1 [package2][…]

升级程序包 

    update [package1][[package2][…]

检查可用升级

    check-update

卸载程序包

    remove | erase package1 [package2][…]

查看程序提供特性:

    provides | whatprovides feature1 [feature2] […]

清理本地缓存:

    clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

构建缓存:

    makecache [fast]

搜索:

    search string1 [string2] […]

    以指定的关键字搜索程序包及summary信息

重新安装:

    resolvedep dep1 [dep2] […]

           (maintained for legacy reasons only – use     repoquery or yum provides)

查看指定包所依赖的capabilities

    deplist

查看yum事务历史

    

history [info|list|packages-list|packages-info|

summary|addon-info|redo|undo|

rollback|new|sync|stats]

yum history

yum history info 6

yum history undo 6

日志:

/var/log/yum.log

原创文章,作者:Kartik,如若转载,请注明出处:http://www.178linux.com/42060

联系我们

400-080-6560

在线咨询

工作时间:周一至周五,9:30-18:30,节假日同时也值班

QR code