ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

Linux之rpm包管理

2019-03-22 20:55:20  阅读:169  来源: 互联网

标签:PACKAGE 管理 程序包 查询 FILE Linux rpm options


rpm包管理


注意:内核不推荐升级,如果需要新版内核,可进行安装,linux可多版本内核共存,启动时进行内核选择即可,以免造成不稳定因素。
/var/lib/rpm 不要破坏,几乎不可重建,重建后数据也没有

主要掌握:
rpm -qa "vsft*" 查询vsft开头的包
rpm -e vsftpd 卸载
rpm -q vsftpd &> /dev/null | rpm -i /media/Packages/vsftpd- 安装
rpm -ql tree:查询包内文件
rpm -qf /bin/cat:查询包来自哪个文件
rpm -qi tree:查看包信息
rpm2cpio /media/Packages/tree-1.6.0-10.el7.x86_64.rpm | cpio -tv 预览包内容
rpm -q --scripts postfix
rpm -ivh https://aliyun.os 可以走网络路径安装软件包
rpm -qpi /media/Packages/tree-1.6.0-10.el7.x86_64.rpm 在软件没安装的情况下,进到光盘内查询包信息。
rpm -qc bash : 列出包内配置文件。
rpm -rR bash:查询bash以来于哪些包
rpm -V tree:查看tree属性是否被修改过。
rpm --import /media/RPM-GPG-KEY-CentOS-7 导入公钥
rpm -e gpg-pubkey-f4a80eb5 卸载公钥
rpm -K /media/Packages/tree-1.6.0-10.el7.x86_64.rpm 验证包合法性


rpm {-i|--install} [install-options] PACKAGE_FILE…

-v: verbose
-vv:
-h: 以#显示程序包管理执行进度
rpm -ivh PACKAGE_FILE ...

[install-options]

--test: 测试安装,但不真正执行安装,即dry run模式
--nodeps:忽略依赖关系
--replacepkgs | replacefiles
--nosignature: 不检查来源合法性
--nodigest:不检查包完整性
--noscripts:不执行程序包脚本
%pre: 安装前脚本 --nopre
%post: 安装后脚本 --nopost
%preun: 卸载前脚本 --nopreun
%postun: 卸载后脚本 --nopostun

rpm包升级

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

-------upgrade:安装有旧版程序包,则“升级”
如果不存在旧版程序包,则“安装”
--------freshen:安装有旧版程序包,则“升级”
如果不存在旧版程序包,则不执行升级操作
rpm -Uvh PACKAGE_FILE ...
rpm -Fvh PACKAGE_FILE ...

--oldpackage:降级
--force: 强制安装

包查询
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
-c:查询程序的配置文件
-d:查询程序的文档
-i:information
-l:查看指定的程序包安装后生成的所有文件
--scripts:程序包自带的脚本
--provides:列出指定程序包所提供的CAPABILITY
-R:查询指定的程序包所依赖的CAPABILITY

常用查询用法:

-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 ...

当包卸载时,对应的配置文件不会删除, 以FILENAME.rpmsave形式保留

包校验
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

导入所需要公钥

rpm -K|checksig rpmfile 检查包的完整性和签名
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
CentOS 7发行版光盘提供:RPM-GPG-KEY-CentOS-7
rpm -qa “gpg-pubkey*”

标签:PACKAGE,管理,程序包,查询,FILE,Linux,rpm,options
来源: https://blog.51cto.com/5033330/2367559

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有