当前位置: 首页 > news >正文

Linux的RPM 与 YUM

Linux的RPM 与 YUM

rpm 包的管理

rpm 用于互联网下载包的打包及安装工具,它包含在某些 Linux 分发版中。它生成具有.RPM 扩展名的文件。RPM是 RedHat Package Manager(RedHat 软件包管理工具)的缩写,类似 windows 的 setup.exe,这一文件格式名称虽然打上了 RedHat 的标志,但理念是通用的。
Linux 的分发版本都有采用(suse,redhat, centos 等等),可以算是公认的行业标准了。

rpm 包的简单查询指令

查询已安装的 rpm 列表
rpm –qa | grep xx
例: 看看当前系统,是否安装了 firefox
指令: rpm -qa | grep firefox

rpm 包名基本格式

一个 rpm 包名:firefox-60.2.2-1.el7.centos.x86_64
名称:firefox
版本号:60.2.2-1
适用操作系统: el7.centos.x86_64
表示 centos7.x 的 64 位系统
如果是 i686、i386 表示 32 位系统,noarch 表示通用

rpm 包的其它查询指令:

rpm -qa :查询所安装的所有 rpm 软件包
rpm -qa | more
rpm -qa | grep X 
[rpm -qa | grep firefox ]
rpm -q 软件包名 :查询软件包是否安装
例:rpm -q firefox
rpm -qi 软件包名 :查询软件包信息
例: rpm -qi firefox
rpm -ql 软件包名 :查询软件包中的文件
如: rpm -ql firefox
rpm -qf 文件全路径名 查询文件所属的软件包
rpm -qf /etc/passwd
rpm -qf /root/install.log

卸载 rpm 包:

基本语法
rpm -e RPM 包的名称

删除 firefox 软件包

rpm -e firefox
  1. 如果其它软件包依赖于您要卸载的软件包,卸载时则会产生错误信息。
    如: $ rpm -e foo removing these packages would break dependencies:foo is needed by bar-1.0-1
  2. 如果我们就是要删除 foo 这个 rpm 包,可以增加参数 --nodeps ,就可以强制删除,但是一般不推荐这样做,因为依赖于该软件包的程序可能无法运行
    如:$ rpm -e --nodeps foo

安装 rpm 包

基本语法
rpm -ivh RPM 包全路径名称

参数说明
i=install 安装
v=verbose 提示
h=hash 进度条

演示卸载和安装 firefox 浏览器
rpm -e firefox
rpm -ivh firefox

yum

Yum 是一个 Shell 前端软件包管理器。基于 RPM 包管理,能够从指定的服务器自动
下载 RPM 包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包。

yum 的基本指令

查询 yum 服务器是否有需要安装的软件
yum list|grep xx 软件列表

安装指定的 yum 包
yum install xxx 下载安装

例:请使用 yum 的方式来安装 firefox
rpm -e firefox
yum list | grep firefox
yum install firefox

相关文章:

  • WebService学习,wsdl文件详解
  • 华清远见嵌入式学习——驱动开发——day9
  • C语言-指针初学速成
  • 【python】linux系统python报错“ssl module in Python is not available”
  • HCIA(11)OSPF 数据包构成(Hello、DBD、LSR、LSU、LSAck包)、状态机、工作流程(建立邻居关系、主从关系协商、LSDB同步)
  • 服务端实时推送技术之SSE(Server-Send Events)
  • 相机图像质量研究(39)常见问题总结:编解码对成像的影响--运动模糊
  • 【java中的方法如何定义与使用】
  • Spring Cloud Alibaba-04-Sentinel服务容错
  • element导航菜单el-menu添加搜索功能
  • PyTorch使用Tricks:学习率衰减 !!
  • Leetcode 209.长度最小的子数组
  • 第2讲-Memory
  • 一文带你解决如何设置Redis临时密码和永久密码
  • C++内联函数的使用
  • [译]Python中的类属性与实例属性的区别
  • 【腾讯Bugly干货分享】从0到1打造直播 App
  • JavaScript新鲜事·第5期
  • JavaSE小实践1:Java爬取斗图网站的所有表情包
  • leetcode46 Permutation 排列组合
  • MySQL数据库运维之数据恢复
  • Odoo domain写法及运用
  • PaddlePaddle-GitHub的正确打开姿势
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • Yii源码解读-服务定位器(Service Locator)
  • 解析 Webpack中import、require、按需加载的执行过程
  • 离散点最小(凸)包围边界查找
  • 判断客户端类型,Android,iOS,PC
  • 深入浅出Node.js
  • 我的zsh配置, 2019最新方案
  • 学习笔记TF060:图像语音结合,看图说话
  • ​VRRP 虚拟路由冗余协议(华为)
  • ​人工智能之父图灵诞辰纪念日,一起来看最受读者欢迎的AI技术好书
  • #13 yum、编译安装与sed命令的使用
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • (AtCoder Beginner Contest 340) -- F - S = 1 -- 题解
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (六)库存超卖案例实战——使用mysql分布式锁解决“超卖”问题
  • (亲测有效)解决windows11无法使用1500000波特率的问题
  • .locked1、locked勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复
  • .net 设置默认首页
  • .net 怎么循环得到数组里的值_关于js数组
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • /dev/sda2 is mounted; will not make a filesystem here!
  • [.net] 如何在mail的加入正文显示图片
  • [1525]字符统计2 (哈希)SDUT
  • [22]. 括号生成
  • [Android 13]Input系列--获取触摸窗口
  • [Android]使用Android打包Unity工程
  • [ASP.NET MVC]如何定制Numeric属性/字段验证消息
  • [ASP.NET 控件实作 Day7] 设定工具箱的控件图标
  • [BZOJ3223]文艺平衡树
  • [Codeforces1137D]Cooperative Game
  • [Docker]十二.Docker consul集群搭建、微服务部署,Consul集群+Swarm集群部署微服务实战
  • [HackMyVM]靶场 Quick3