Linux软件管理RPM的使用

简介: 上一章学习了YUM工具的使用,这篇文章学习RPM的使用,首先会介绍什么是RPM,RMP是干什么的,然后学习怎么使用RPM,这是本篇文章需要学习的内容

前言


 上一章学习了YUM工具的使用,这篇文章学习RPM的使用,首先会介绍什么是RPM,RMP是干什么的,然后学习怎么使用RPM,这是本篇文章需要学习的内容


什么是RPM包


RMP  Package  Manager(原Red Hat Package Manager,现在是一个递归缩写),由Red Hat公司提出,被众多Linux发行版所采用,也称二进制(binary code)无需编译,可以直接使用,无法设定个人设置,开关功能,软件包示例(注意后缀):musql-community-common-5.7.12-1.el7.x86_64.rpm。


认识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工具


  ● 管理rpm包的基本工具

  ● YUM功能相同

  ● RPM无法处理依赖


安装(i)


以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后缀不然安装会报错。


查询(q)


命令:rpm   -q   需要查询的部分名称


[root@localhost Packages]# rpm -q wget
wget-1.14-18.el7_6.1.x86_64


看到软件包的名字,就说明rpm-q查询成功,已经安装软件。查询的时候就不用加后缀了。


卸载(e)


命令: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命令安装程序、查看和卸载程序,并且要注意安装的时候需要加上后缀,卸载的时候不可以加后缀,否则会报错。



相关文章
|
3月前
|
Oracle 关系型数据库 Linux
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
224 0
VirtualBox 7.1.10 (macOS, Linux, Windows) - 开源跨平台虚拟化软件
|
2月前
|
Linux API iOS开发
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
125 1
Blender 4.5 (Linux, macOS, Windows) - 开源 3D 创意软件 (渲染 建模 雕刻)
|
2月前
|
Linux iOS开发 MacOS
Krita 5.2.10 (Linux, macOS, Windows) - 开源免费绘画软件
Krita 5.2.10 (Linux, macOS, Windows) - 开源免费绘画软件
120 0
Krita 5.2.10 (Linux, macOS, Windows) - 开源免费绘画软件
|
2月前
|
监控 Linux 网络安全
FinalShell SSH工具下载,服务器管理,远程桌面加速软件,支持Windows,macOS,Linux
FinalShell是一款国人开发的多平台SSH客户端工具,支持Windows、Mac OS X和Linux系统。它提供一体化服务器管理功能,支持shell和sftp同屏显示,命令自动提示,操作便捷。软件还具备加速功能,提升访问服务器速度,适合普通用户和专业人士使用。
214 0
|
4月前
|
安全 测试技术 Linux
Flawnter 5.9.1 (macOS, Linux, Windows) - 应用程序安全测试软件
Flawnter 5.9.1 (macOS, Linux, Windows) - 应用程序安全测试软件
143 2
Flawnter 5.9.1 (macOS, Linux, Windows) - 应用程序安全测试软件
|
7月前
|
缓存 Ubuntu Linux
Linux中yum、rpm、apt-get、wget的区别,yum、rpm、apt-get常用命令,CentOS、Ubuntu中安装wget
通过本文,我们详细了解了 `yum`、`rpm`、`apt-get`和 `wget`的区别、常用命令以及在CentOS和Ubuntu中安装 `wget`的方法。`yum`和 `apt-get`是高层次的包管理器,分别用于RPM系和Debian系发行版,能够自动解决依赖问题;而 `rpm`是低层次的包管理工具,适合处理单个包;`wget`则是一个功能强大的下载工具,适用于各种下载任务。在实际使用中,根据系统类型和任务需求选择合适的工具,可以大大提高工作效率和系统管理的便利性。
724 25
|
11月前
|
存储 关系型数据库 Linux
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
2024 年 16 个适用于 Linux 的开源云存储软件 (上)
|
11月前
|
Kubernetes Linux 测试技术
|
11月前
|
存储 安全 Unix
2024 年 16 个适用于 Linux 的开源云存储软件 (下)
2024 年 16 个适用于 Linux 的开源云存储软件 (下)
2024 年 16 个适用于 Linux 的开源云存储软件 (下)