升级:
rpm {-U|–upgrade} [install-options] PACKAGE_FILE …
-U:升级或安装;
rpm {-F|–freshen} [install-options] PACKAGE_FILE …
-F:升级
rpm -Uvh PACKAGE-FILE…
rpm -Fvh PACKAGE-FILE…
–oldpackage:降级
–force:强制升级
注意:(1)不要对内核做升级操作;Linux支持多内核版本并存,因此,直接安装新版本内核;
(2)如果某程序包的配置文件安装后曾经被修改过,升级时,新版本的程序提供的同一个配置 文件不会覆盖原文件,而是把新版本的配置版本的配置文件重命名(FILENAME.rpmnew)后提供;
卸载:
rpm {-e|–erase} [–allmatches] [–nodeps] [–noscripts]
[–notriggers] [–test] PACKAGE_NAME …
–nodeps :忽略依赖关系
–test: z测试卸载,dry run模式
查询:
rpm {-q|–query} [select-options] [query-options]
[select-options]
PACKAGE_NAME : 查询指定的程序报是否已经安装,及其版本;
-a, –all: 查询已安装过的所有包;
-f, FILE: 查询指定的文件有那个安装包生成;
-g,–group GROUP
-p,–package PACKAGE_FILE:用于实现对未安装的程序报执行查询操作;
–whatprovides CAPABILITY: 查询指定的CAPABILITY由那个程序包提供;
–whatrerequires CAPABILITY:查询指定的CAPABILITY被那个包所依赖;
[qery-options]
–changelog:查询rpm包的changlog
-l, list:程序安装生成的所有列表;
-i ,–info: 程序包的相关信息,版本号,大小,所属的包租,等;
-c, –configfiles: 查询指定的程序包提供的配置文件;
-d,–docfiles:查询指定的程序包提供的文档;
–provides: 列出指定的程序包的所有的CAPABILITY;
-R,–requires:查看程序报自带的脚本片断;
用法:
-qi PACKAGE, -qf FILE, -qc PACKAGE, -ql PACKAGE, -qd PACKAGE
-qpi PACKAGE-FILE,-qpl PACKAGE-FILE, -qpc PACKAGE-FILE,…
校验:
rpm {-V|–verify} [select-options] [verify-options]
S file size differs 文件大小不同
M Mode differs (formerfy MD5)differs 模式不同(包含文件和权限)
5 digest(formerly MD5 sum)differs
D Device major/minor number mismatch 设备主要/次要号码不匹配
L readLink(2)path mismatch 符号链接路径不同
U User ownership diffes 用户所有者不同
G Group ownership differs 群组所有者不同
T mTime differs 修改时间不同
P caPabilites differ 功能不同
包来源合法性验证和完整性验证:
来源合法性验证:
完整性验证;
获取定导入信任的包制作者的密钥:
对于Centos7 发行版来说:rpm –import /etc/pki/rpm-gpg/RPM-KEY-Centos-7
验证:(1)安装此组织签名的程序是,会自动执行验证;
(2)手动验证:rpm -k PACKAGE-FILE
数据库重建:
rpm管理数据库路径:/var/lib/rpm/
查询操作:通过此处数据库进行;
获取帮助:Centos6: man rpm
Centos7: man rpmdb
rpm {–initdb|–rebuilddb} [–dbpth DIRECTORY] [–root DIRECTORY]
–initdb:初始化数据库,当天无任何数据库可实现初始化创建一个新的;当前有时候不执行任何操作
–rebuilddb:重建构建,通过读取当前系统上所有已经安装的程序包进行重新创建;
原创文章,作者:shadow,如若转载,请注明出处:http://www.178linux.com/65465
评论列表(1条)
包管理更多的使用yum来解决~后面可以再总结一下yum相关的~