扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章的内容主要围绕如何进行rpm程序包管理功能解析进行讲述,文章内容清晰易懂,条理清晰,非常适合新手学习,值得大家去阅读。感兴趣的朋友可以跟随小编一起阅读吧。希望大家通过这篇文章有所收获!
10余年的乐业网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整乐业建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“乐业网站设计”,“乐业网站推广”以来,每个客户项目都认真落实执行。
Rpm包管理功能全解
软件包管理的功能:将编译好的程序的各组成文件打包成一个或几个程序包文件,为了方便的实现程序包的安装、升级、卸载、查询、校验、数据库维护。
下面我们来看看RPM包管理的解析
Rpm包在redhat和S.U.S.E中有很大的应用
我们接下来就以centos系统中rpm包的管理做一些详细的功能解析
使用yum(rhel系列)安装时可以自动解决依赖关系d
rpm包命名格式:
name-VERSION-release.arch.rpm
VERSION:major.minor.release
Major:主版本号(版本有大的更新); minor:次版本号(小更新)
release.arch:rpm包的发行号
release.os: 2.el7(平台).i386(架构).rpm archetecture(架构):i386, x64(amd64), ppc, noarch理器;
实际操作:
本机在服务器上已经成功下载zsh-4.3.10-9.el6.x86_64.rpm用此来实施
语法:rpm [options] [packages_file]
安装;-i,--install
rpm -ivh /path/to/rpm_package
-v;显示安装信息
-vv;显示更详细的安装信息
-h;以井号显示安装进度
--nodeps;忽略依赖关系(适用于卸载)
--force;强行安装(适用于卸载)
重装;--replacepkgs会覆盖原有信息
Rpm -i --replacepkgs /path/to/rpm_name
[root@bucktan ~]# rpm -ivh --replacepkgs zsh-4.3.10-9.el6.x86_64.rpm
卸载;-e,--erase
rmp -e package_name
--allmatches卸载匹配所有指定名称的软件包
--nodeps忽略依赖关系
--test 测试卸载
升级;-U -F
升级或安装;
rpm -U /path/to/rpm_package
--oldpackage降级
在服务器上取了两个包:zabbix-2.4.0-1.el6.x86_64.rpm
zabbix-2.4.5-1.el6.x86_64.rpm
之前升级至zabbix-2.4.5-1.el6.x86_64.rpm
[root@bucktan]~# rpm -Uvh --oldpackage zabbix-2.4.0-1.el6.x86_64.rpm
只升级;(若不存在旧版本则不会执行)
rpm -F /path/to/rpm_package
通常搭配vh使用;
rpm -Uvh|-Fvh /path/to/package
--nosignature 不检查包签名信息的合法性
注意;不要对内核执行升级操作
不同内核版本可以共存,因此可执行安装操作,但不建议升级
(重点) 查询;rpm {-q|--query} [select-options] [query-options]
查询包是否已安装;
rpm -q package_name
[select-options]:
rpm -qa查询所有已安装的包;
rpm -qf /path/to/file查询某文件是由那个包生成的;
-q --whatprovides file_name 查询指定的capability由哪个程序包所提供
-q --whatrequires file_name 查询指定的capability由哪个程序包所依赖
[query-options]:
rpm -ql package_name查询包安装后生成的文件;
rpm -qi package_name查询包的简要说明;
rpm -qd package_name查询包安装后生成的帮助文档;
rpm -qc package_name查询包安装后生成的配置文件;
rpm -qR package_name 查询指定软件包的依赖关系
rpm -q --scripts 查询包相关的脚本;
脚本分四类
preinstall 安装前脚本
postinstall 安装后脚本
preuninstall 卸载前脚本
postuninstall 卸载后脚本
查询未安装包的相关信息;-qp
rpm -qpl package_file 查询安装后会生成的的文件
rpm -qpi package_file查询包的简单描述信息;
可搭配其选项使用,如-qp --scripts
校验;检查安装后的文件是否被修改过
rpm -V package_name
[root@bucktan ~]# 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 MD5
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 能力改变了
校验来源合法性和软件的完整性
包完整性;单项加密机制(MD5|sha1..)
来源合法性;公钥加密机制(RSA)
rpm -K /path/to/packagefile直接检验程序包来源合法性
rpm --checksig /path/to/package_file
--nosigeature:不检查来源合法性
--nodigest:校验时不检查包完整性
导入GPG密钥文件:
rpm --import /path/to/gpg-key-file
导入以后再做验证
数据库
位置:/var/lib/rpm
重建:
rpm --initdb:初始化
如果事先不存在一个数据库,则新建之
rpm --rebuilddb 重建
直接新建数据库,会覆盖原有库
感谢你的阅读,相信你对“如何进行rpm程序包管理功能解析”这一问题有一定的了解,快去动手实践吧,如果想了解更多相关知识点,可以关注创新互联网站!小编会继续为大家带来更好的文章!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流