CentOS程序包管理详解(3)

安装:rpm {-i|--install} [install-options] PACKAGE_FILE ...
install-options
-h,--hash:用"#"表示安装进度条;
--force:强制安装进行,无论是否有错误发生;不建议使用;
--test:并非真正安装程序包,仅仅是测试安装过程是否能够正常进行;dry run
--nodeps:忽略因为依赖关系导致的安装错误;不建议使用;
--replacefiles:在安装程序包时,程序包中的文件会直接替换已经存在的文件;���不使用该选项,在安装程序包中的文件之前,先将原有的同名文件改名为filename.rpmsave;
--replacepkgs:无需卸载已安装程序包而重新安装之;
--noscripts:在安装前及安装后均不允许安装相关脚本;
--nopre:
--nopost:
--nosignature:跳过校验程序包来源的合法性;
--nodigest:跳过校验程序包完整性;
--oldpackage:降级安装,指定的安装的程序包的版本低于当前已经安装的程序包的版本;

示例:]# rpm -ivh finger-0.17-52.el7.x86_64.rpm

升级:
rpm {-U|--upgrade} [install-options] PACKAGE_FILE ...
rpm {-F|--freshen} [install-options] PACKAGE_FILE ...

相比较而言,两个选项有下列特点:
    -U:既可以对已经安装的程序包进行升级或降级安装,又可以在未安装该程序包时进行全新安装;可以包括部分-i安装模式的功能;
    -F:仅能够对已经安装的程序包进行升级安装;

install-options
    -h,--hash:用"#"表示安装进度条;
    --force:强制安装进行,无论是否有错误发生;不建议使用;
    --test:并非真正安装程序包,仅仅是测试安装过程是否能够正常进行;dry run
    --nodeps:忽略因为依赖关系导致的安装错误;不建议使用;
    --replacefiles:在安装程序包时,程序包中的文件会直接替换已经存在的文件;若不使用该选项,在安装程序包中的文件之前,先将原有的同名文件改名为filename.rpmsave;
    --replacepkgs:无需卸载已安装程序包而重新安装之;
    --noscripts:在安装前及安装后均不允许安装相关脚本;
        --nopre:
        --nopost:
    --nosignature:跳过校验程序包来源的合法性;
    --nodigest:跳过校验程序包完整性;
    --oldpackage:降级安装,指定的安装的程序包的版本低于当前已经安装的程序包的版本;

注意:
1.强烈建议,不要使用此方法对内核进行升级操作;
2.升级安装程序包可能会带来文件的变化,或引入未知的BUG或漏洞,因此,在实施升级操作之前,必须要进行可行性分析;

卸载:
rpm {-e|--erase} [--allmatches] [--nodeps] [--noscripts] [--notriggers] [--test] PACKAGE_NAME ...

注意:卸载程序包时,rpm命令的参数时程序名称而非程序包的名称;
    --allmatches:卸载所有能够匹配指定名称的程序包的各个版本;
    --nodeps:卸载时忽略依赖关系;
    --test:并非真正的卸载而是测试卸载过程是否能够正常完成;dry run

查询:rpm {-q|--query} [select-options] [query-options]
select-options
PACKAGE_NAME:指定要查询的程序名称,不是程序包名称;
-a,--all:查询所有已经安装的程序包名称;
-f,--file FILE:查询指定的文件是由哪个程序包提供的;
-p,--package PACKAGE_FILE:查看尚未安装的程序包文件中的文件清单;
--whatprovides CAPABILITY:查询指定的CAPABILITY是由哪个程序包提供的;
--whatrequires CAPABILITY:查询指定的CAPABILITY被哪个程序包所依赖;

query-options
    --changelog:查询程序包的历次的版本变更记录;
    -c,--configfiles:查询指定的程序包中包含哪些配置文件;
    -d,--docfiles:查询指定的程序包中有哪些文件文件;
    -i,--info:查询指定程序包的相关属性信息;
    -l,--list:列表显示;
    --provides:列出指定程序包所提供的所有的CAPABILITY;
    -R,--requires:列出指定程序包的依赖关系;
    --scripts:查询程序包所携带的脚本的内容;

常用的选项组合:
    -qa
    -qf | -qc | -qd | -ql PACKAGE_NAME
    -qpl | -qpc | -qpd | -qpl PACKAGE_FILE

校验: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 mTime differs
P caPabilities differ

认证:
    rpmkeys --import PUBKEY ...
        导入指定的认证密钥的路径;

rpmkeys {-K|--checksig} PACKAGE_FILE ...
        检查指定的程序包的数字签名信息;

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/17805.html