什么是rpm
1.1`RPM` 全称 `RedHat Package Manager` 缩写,由红帽开发用于软件包的安装、升级、卸载与查询。
1.2rpm包名组成部分
`RPM` 包命名以-将软件分成了若干部分 `bash-4.2.46-28.el7.x86_64.rpm`
1.3怎么获取rpm包
在刚开始学习rpm包,建议先从本地镜像中获取 `rpm` 但实际生产环境中大多数是通过联网方式获取 `rpm` 包,或者搭建企业私有包管理仓库平台
1.4其他类型的按照包
rpm包 预先编译打包,安装简单
源码包 手动编译打包,安装繁琐
二进制包 解压即用,安装简单
yum基本操作
1.什么是yum
`yum/dnf` 是 `RedHat` 及 `CentOS` 系统中的软件包管理器。它能够通过互联网下载 `.rpm` 格式包进行安装,并能自动处理其依赖间关系,无须繁琐地一次次下载安装。
2.什么是yum源
要使用 `yum` 命令工具安装更新软件,需要有一个包含各种 `rpm` 软件包的仓库,这个软件仓库我们一般称为 `yum` 源。当然这个源可以是本地仓库、也可以是网络仓库。如图所示: client --ftp/http/file-> yum地址 --->yum仓库(rpm包集合)
3.yum配置文件
#centos8
cat /etc/yum.conf
[main]
gpgcheck=1 # 检查来源是否合法,需要有制作者的公钥信息
installonly_limit=3 # 同时可以安装5个软件包、最小为2,设置为0或者1则不限制
clean_requirements_on_remove=True # 删除包时,是否将不再使用的包删除
best=True # 升级时,自动选择安装最新版,即使缺少包的依赖
skip_if_unavailable=False #centos7 vim /etc/yum.cnf
cachedir=/var/cache/yum/$basearch/$releasever # 缓存目录
keepcache=0 # 缓存软件包,1启动 0 关闭
debuglevel=2 # 调试级别
logfile=/var/log/yum.log # 日志记录位置
exactarch=1 # 检查平台是否兼容
obsoletes=1 # 检查包是否废弃
gpgcheck=1 # 检查来源是否合法,需要有制作者的公钥信息
plugins=1
installonly_limit=5 # 同时可以安装5个软件包、最小为2,设置为0或者1则不限制 # metadata_expire=90m #每小时手动检查元数据
# in /etc/yum.repos.d #包含repos.d目录中的.repo文件
配置yum源
系统默认的源是国外提供,需要替换为国内的源 1.配置阿里 `yum` 源 # wget -O /etc/yum.repos.d/CentOS-Base.repo \
http://mirrors.aliyun.com/repo/Centos-7.repoyum的日常使用
1.使用dnf/yum list 查询所有仓库中的软件包
yum list
yum list | grep httpd

2.使用 `dnf/yum list installed` 查询所有已安装至系统中的软件包
dnf list installed

3.使用 `dnf/yum provides` 查询系统命令来自于哪个软件包
rpm -qf $(which cd)
bash-4.2.46-31.el7.x86_64
# PS: rpm需要知道命令的绝对路径, 如果不存在该命令是无法查找到该命令所属的软件包 # yum provides cd
#范例
# yum provides zabbix
已加载插件:fastestmirror
Repository base is listed more than once in the configuration
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* elrepo: mirrors.neusoft.edu.cn
zabbix30-3.0.31-1.el7.x86_64 : Open-source monitoring solution for your IT infrastructure
源 :epel
匹配来源:
提供 :zabbix = 3.0.31-1.el7 zabbix40-4.0.27-1.el7.x86_64 : Open-source monitoring solution for your IT infrastructure
源 :epel
匹配来源:
提供 :zabbix = 4.0.27-1.el7
4.yum安装软件包
yum install -y httpd

5.yum更新软件包
#更新http软件
yum update httpd -y

6.yum删除软件包
yum remove httpd -y

7.yum管理仓库
#列出 dnf/yum repolist 源可用的软件仓库
yum repolist
yum repolist all

8.yum管理历史记录
当我们删除了某个软件时,希望撤销删除的操作,可以使用 yum history undo

删除http软件
yum remove httpd
yum history

使用 dnf/yum history undo Number 撤销
yum history info N
yum history undo N

9.yum缓存软件包
1.缓存rpm包方式一、通过修改 dnf/yum 全局配置文件
vim /etc/yum.conf

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=1 # 启动缓存
[root@magedu.com ~]# yum install lrzsz -y
[root@magedu.com ~]# find /var/cache/yum/ -type f -name "*.rpm"

2.缓存rpm包方式二,通过 dnf/yum下载该软件包至本地,不进行安装

yum install httpd -y \
--downloadonly \
--downloaddir=/opt

3.如果缓存的数据包太多,可以使用yum/dnf清楚缓存

# 清理所有yum缓存信息,包括缓存的软件包

yum clean all

#仅清理所有缓存的软件包

yum clean packages

linux软件管理之yum管理操作软件包的更多相关文章

  1. 尚学linux课程---9、yum相关操作和知识

    尚学linux课程---9.yum相关操作和知识 一.总结 一句话总结: 如何使用比如163,阿里云给yum配置yum源:去官网,不要百度:直接去官网,有帮助文档的(比如centos的就在centos ...

  2. 运维笔记10 (Linux软件的安装与管理(rpm,yum))

    概述:用rpm安装和管理软件(rpm解决依赖性),用yum安装与管理软件(yum解决依赖性). 1.linux的软件 linux能够说是一款改变时代的操作系统,可是一个操作系统再优秀假设没有好用的应用 ...

  3. linux软件管理之yum管理rpm包

    YUM 使用官方源 ==================================================================================== 阿里镜像站 ...

  4. Linux基础(4)-硬盘分区、格式化及文件系统的管理、软件包的管理、yum管理RPM包和python的源码安装

    一: 1)  开启Linux系统前添加一块大小为15G的SCSI硬盘 2)  开启系统,右击桌面,打开终端 3)  为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑 ...

  5. Linux软件包管理和磁盘管理实践

    一.自建yum仓库,分别为网络源和本地源 本地yum仓库的搭建就是以下三个步骤: 创建仓库目录结构 上传相应的包到目录下,或者直接挂载光盘也行,如果挂载光盘,第三步就可以省略,因为光盘默认里有repo ...

  6. linux工具apt、yum和dnf运用

      首先,说明一下我的环境:ubuntu16.04. 什么是APT: 高级包装工具(英语:Advanced Packaging Tools,简称:APT)是Debian及其衍生发行版(如:ubuntu ...

  7. Linux软件管理(rpm、yum、tar)

    RPM软件包安装 YUM安装 源代码安装 TAR包管理:实现对文件的备份和压缩 rpm包管理 rpm命令是RPM软件包的管理工具. -a:查询所有套件:-b<完成阶段><套件档> ...

  8. linux 软件管理--yum工具及源码包

    目录 linux 软件管理--yum工具及源码包 一.yum基本概述 二.yum源的配置 三.yum实践案例 四.yum全局配置文件 五.yum签名检查机制 五.制作本地yum仓库 六.构建企业级yu ...

  9. Linux—软件包管理器yum安装详解

    yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器. 基於RPM包管理,能够从指定的服务器自动下载RPM包 ...

随机推荐

  1. 高并发之ReentrantLock、CountDownLatch、CyclicBarrier

    本系列研究总结高并发下的几种同步锁的使用以及之间的区别,分别是:ReentrantLock.CountDownLatch.CyclicBarrier.Phaser.ReadWriteLock.Stam ...

  2. Javascript 严格模式("use strict";)详细解解

    1 1 1 Javascript 严格模式("use strict";)详细解解 "use strict";定义JavaScript代码应该在"str ...

  3. 如何关闭 iPad Pro 自动开启 wifi 和蓝牙

    如何关闭 iPad Pro 自动开启 wifi 和蓝牙 为了省电,明明关闭了,但是发现每天都会自动开启,什么鬼设计 https://support.apple.com/zh-cn/HT208086 h ...

  4. Learning CSS with Chrome DevTools

    Learning CSS with Chrome DevTools CSS 复合属性展开 border background box-shadow flex-flow flex HTML5 custo ...

  5. Node.js & LTS

    Node.js & LTS 2020 https://nodejs.org/en/about/releases/ https://raw.githubusercontent.com/nodej ...

  6. NGK治理机制研究

    治理机制是区块链项目的重要设计.随着项目的运行,生态中的参与者需要根据实际运行情况对项目进行必要的更新和升级,以使项目持续良性发展.治理机制的作用是使不同参与者最终达成共识.治理机制直接决定这个网络生 ...

  7. eclipse从接口快速跳转到实现类

    1.只跳转到实现类上 按住Ctrl键,把鼠标的光标放在要跳转的接口上面,选择第二个 2.直接跳转大实现的方法上 按住Ctrl键,把鼠标的光标放在要跳转的方法上面,选择第二个 对比可以发现,操作都是一样 ...

  8. Java基础语法:abstract修饰符

    一.简介 描述: 'abstract'修饰符可以用来修饰方法,也可以修饰类. 如果修饰方法,那么该方法就是抽象方法:如果修饰类,那么该类就是抽象类. 抽象类和抽象方法起到一个框架作用,方便后期扩展的重 ...

  9. Win命令行切换Python版本

    目录 安装2.x 和 3.x 的python 设置系统环境变量 pip的使用 参考 安装2.x 和 3.x 的python 我这里使用anaconda来安装两个版本的python包. conda cr ...

  10. 剑指 Offer 37. 序列化二叉树 + 二叉树的层次遍历

    剑指 Offer 37. 序列化二叉树 Offer_37 题目描述 题目解析 本题主要考察的就是二叉树的层次遍历. 层次遍历时可以根据二叉树的特点将空结点也进栈. 反序列化时同样可以根据层次遍历的思路 ...