上一章学习了YUM工具的使用,这篇文章学习RPM的使用,首先会介绍什么是RPM,RMP是干什么的,然后学习怎么使用RPM,这是本篇文章需要学习的内容
RMP Package Manager(原Red Hat Package Manager,现在是一个递归缩写),由Red Hat公司提出,被众多Linux发行版所采用,也称二进制(binary code)无需编译,可以直接使用,无法设定个人设置,开关功能,软件包示例(注意后缀):musql-community-common-5.7.12-1.el7.x86_64.rpm。
通过命令:ls /mnt/cdrom/Packages/ | tail -10
# /mnt/cdrom是上篇文章我们挂载光盘驱动的位置,RPM包在Packages下因为文件较多我们看后十行。
[root@localhost ~]# ls /mnt/cdrom/Packages/ | tail -10
yum-plugin-tmprepo-1.1.31-54.el7_8.noarch.rpm
yum-plugin-verify-1.1.31-54.el7_8.noarch.rpm
yum-plugin-versionlock-1.1.31-54.el7_8.noarch.rpm
yum-utils-1.1.31-54.el7_8.noarch.rpm
zenity-3.28.1-1.el7.x86_64.rpm
zip-3.0-11.el7.x86_64.rpm
zlib-1.2.7-18.el7.x86_64.rpm
zlib-devel-1.2.7-18.el7.x86_64.rpm
zsh-5.0.2-34.el7_8.2.x86_64.rpm
zziplib-0.13.62-12.el7.x86_64.rpm拿其中一个RPM包来解释:zip-3.0-11.el7.x86_64.rpm
- zip:是软件包名
- 3.0-11:是版本号(Version)
- el7:是发布版本(Release5/6/7)
- x86_64:是系统平台(32/64)
- rpm:是文件后缀
- 管理rpm包的基本工具
- YUM功能相同
- RPM无法处理依赖
以wget-1.14-15.el7x86_64.rpm为例,首先要检查wget-1.14-15.el7x86_64.rpm是否存在。
命令:rpm -ivh wget-1.14-18.el7_6.1.x86_64.rpm
- -i:安装
- v:可视
- h:百分比
- //进入到/mnt/cdrom/Packages/中
- [root@localhost ~]# cd /mnt/cdrom/Packages/
- //查看wget-1.14-18.el7_6.1.x86_64.rpm是否存在
- [root@localhost Packages]# ls wget-1.14-18.el7_6.1.x86_64.rpm
- wget-1.14-18.el7_6.1.x86_64.rpm
- //安装wget-1.14-18.el7_6.1.x86_64.rpm包
- [root@localhost Packages]# rpm -ivh wget-1.14-18.el7_6.1.x86_64.rpm
- 警告:wget-1.14-18.el7_6.1.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
- 准备中... ################################# [100%]
- 软件包 wget-1.14-18.el7_6.1.x86_64 已经安装
注意安装的时候是安装软件包所以一定要加.rpm后缀不然安装会报错。
命令:rpm -q 需要查询的部分名称
- [root@localhost Packages]# rpm -q wget
- wget-1.14-18.el7_6.1.x86_64
看到软件包的名字,就说明rpm-q查询成功,已经安装软件。查询的时候就不用加后缀了。
命令:rpm -ech wget-1.14-18.el7_6.1.x86_64
- //删除wget-1.14-18.el7_6.1.x86_64
- [root@localhost Packages]# rpm -ech wget-1.14-18.el7_6.1.x86_64
- ################################# [100%]
- 正在清理/删除...
- ################################# [100%]
- //查询wget-1.14-18.el7_6.1.x86_64,未找到,说明已经卸载成功
- [root@localhost Packages]# rpm -q wget-1.14-18.el7_6.1.x86_64
- 未安装软件包 wget-1.14-18.el7_6.1.x86_64
- [root@localhost Packages]# rpm -ivh xchat-2.8.8-25.el7.x86_64.rpm
- 警告:xchat-2.8.8-25.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
- 错误:依赖检测失败:
- libntlm.so.0()(64bit) 被 xchat-1:2.8.8-25.el7.x86_64 需要
- libsexy.so.2()(64bit) 被 xchat-1:2.8.8-25.el7.x86_64 需要
-
安装需要依赖的软件包的时候,会提示安装失败,因为RPM无法处理依赖,这个时候用yum来安装,YUM可以处理依赖自动下载,RPM命令的优点是不需要配置,YUM需要配置。
- [root@localhost Packages]# yum -y install xchat-2.8.8-25.el7.x86_64.rpm
- 已加载插件:fastestmirror, langpacks
- 正在检查 xchat-2.8.8-25.el7.x86_64.rpm: 1:xchat-2.8.8-25.el7.x86_64
- xchat-2.8.8-25.el7.x86_64.rpm 将被安装
- 正在解决依赖关系
- --> 正在检查事务
- ---> 软件包 xchat.x86_64.1.2.8.8-25.el7 将被 安装
- --> 正在处理依赖关系 libntlm.so.0()(64bit),它被软件包 1:xchat-2.8.8-25.el7.x86_64 需要
- Loading mirror speeds from cached hostfile
- --> 正在处理依赖关系 libsexy.so.2()(64bit),它被软件包 1:xchat-2.8.8-25.el7.x86_64 需要
- --> 正在检查事务
- ---> 软件包 libntlm.x86_64.0.1.3-6.el7 将被 安装
- ---> 软件包 libsexy.x86_64.0.0.1.11-23.el7 将被 安装
- --> 解决依赖关系完成
-
- 依赖关系解决
-
- =======================================================================================
- Package 架构 版本 源 大小
- =======================================================================================
- 正在安装:
- xchat x86_64 1:2.8.8-25.el7 /xchat-2.8.8-25.el7.x86_64 3.7 M
- 为依赖而安装:
- libntlm x86_64 1.3-6.el7 dvd 44 k
- libsexy x86_64 0.1.11-23.el7 dvd 45 k
-
- 事务概要
- =======================================================================================
- 安装 1 软件包 (+2 依赖软件包)
-
- 总计:3.8 M
- 总下载量:89 k
- 安装大小:3.9 M
- Downloading packages:
- ---------------------------------------------------------------------------------------
- 总计 15 MB/s | 89 kB 00:00
- Running transaction check
- Running transaction test
- Transaction test succeeded
- Running transaction
- 正在安装 : libsexy-0.1.11-23.el7.x86_64 1/3
- 正在安装 : libntlm-1.3-6.el7.x86_64 2/3
- 正在安装 : 1:xchat-2.8.8-25.el7.x86_64 3/3
- 验证中 : 1:xchat-2.8.8-25.el7.x86_64 1/3
- 验证中 : libntlm-1.3-6.el7.x86_64 2/3
- 验证中 : libsexy-0.1.11-23.el7.x86_64 3/3
-
- 已安装:
- xchat.x86_64 1:2.8.8-25.el7
-
- 作为依赖被安装:
- libntlm.x86_64 0:1.3-6.el7 libsexy.x86_64 0:0.1.11-23.el7
-
- 完毕!
使用YUM命令,自动下载依赖,安装程序成功。
本篇文章介绍了RPM工具的使用,了解RPM无法处理依赖,学习使用RPM命令安装程序、查看和卸载程序,并且要注意安装的时候需要加上后缀,卸载的时候不可以加后缀,否则会报错。
创作不易,动动小手给个点赞加关注吧,有什么意见评论区告诉我,一起学习。