Yum update和upgrade的区别

news2024/11/18 21:46:55

Yum update和upgrade的区别

image-20230610080256965

Linux yum中package升级命令有两个分别是 yum upgrade 和 yum update

1、区别

默认情况下,yum update和yum upgrade的功能是完全一样的,都是将需要更新的package(这里的包包括常规的包、软件、系统版本、系统内核)更新至软件源中的最新版。区别是 yum upgrade会删除旧版本的package,而yum update则会保留,但是这个功能是需要额外配置的!!!

yum 的 upgrade 是等价于打开 obsoletes 配置的 yum update
而默认中/etc/yum.conf配置文件obsoletes是打开的,因此这两个指令针对系统内核来说是完全等价的。

效果就是:yum upgrade == yum update 都是将需要更新的package(这里的包包括常规的包、软件、系统版本、系统内核)更新至软件源中的最新版。

若一定要升级,如果软件依赖旧版本的package,最好是使用 yum update(需要配置/etc/yum.conf下的obsoletes值为0),确保不会出现兼容问题。但再正式环境最好不要使用yum更新,会出现意想不到的问题。

1表示更新旧的rpm包的同时会删除旧包,0表示更新的时候不会删除旧包

2、升级

升级软件包的时候,如果不需要升级的内核,可以添加 exclude 参数过滤,例如centos的升级

$ yum --exclude=kernel* --exclude=centos-release* -y update

或者直接修改配置文件 /etc/yum.conf, 在[main]配置添加配置项

exclude=kernel*
exclude=centos-release*

之后执行

$ yum -y update

配置/etc/yum.conf文件:

这是一个yum缓存配置文件的示例,obsoletes定义了更新时处理软件包的取代关系,简单来讲,1表示更新旧的rpm包的同时会删除旧包,0表示更新的时候不会删除旧包

[root@k8s-master1 ~]#cat /etc/yum.conf 
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release


#  This is the default, if you make this bigger yum won't see if the metadata
# is newer on the remote and so you'll "gain" the bandwidth of not having to
# download the new metadata and "pay" for it by yum not having correct
# information.
#  It is esp. important, to have correct metadata, for distributions like
# Fedora which don't keep old packages around. If you don't like this checking
# interupting your command line usage, it's much better to have something
# manually check the metadata once an hour (yum-updatesd will do this).
# metadata_expire=90m

# PUT YOUR REPOS HERE OR IN separate files named file.repo
# in /etc/yum.repos.d
[root@k8s-master1 ~]#

因此,yum update和yum upgrade的功能都是一样的,都是将需要更新的package更新到源中的最新版。唯一不同的是,yum upgrade会删除旧版本的package,而yum update则会保留(obsoletes=0)

3、测试过程

测试前

  • 通过check-update选项,可以了解系统中哪些已安装的包当前有更新,如下所示,这些包存在可用的更新
yum check-update

image-20230609073351368

image-20230609073429416

  • 查看当前系统版本、内核版本、包版本

image-20230609073535451

image-20230609073429416

  • 查看/etc/yum.conf配置

image-20230609073648087

yum update测试

  • 执行命令
yum update -y

image-20230609073723397

重启机器:

  • 观察

更新了内核(小版本升级),操作系统版本,软件包版本。

image-20230609075115404

  • 修改/etc/yum.conf下的obsoletes值为0后,再测试
[root@docker ~]#vim /etc/yum.conf #1表示更新旧的rpm包的同时会删除旧包,0表示更新的时候不会删除旧包,

image-20230610073848053

  • 再次升级并重启
[root@docker ~]#yum update -y
[root@docker ~]#reboot
  • 观察

更新了内核(小版本升级),操作系统版本,软件包版本。

image-20230610075525720

但是,配置了/etc/yum.conf下的obsoletes值为0,但旧rpm包依旧是被删除了哇。这个就很奇怪了???和理论不符。

yum upgrade测试

  • 执行命令
yum upgrade -y
reboot
  • 观察

更新了内核(小版本升级),操作系统版本,软件包版本。

image-20230610073205679

4、参考文章

https://www.jianshu.com/p/761b24775131

https://blog.csdn.net/bisal/article/details/105061873

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/641598.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

如何使用ArcGIS加载历史影像

历史影像对研究地物的变化可以产生很直观的效果,Esri提供了在线浏览的历史影像,这里给大家介绍一下如何将这个历史影像加载到ArcGIS,希望能对你有所帮助。 获取地图链接 打开地图网站(https://livingatlas.arcgis.com/wayback/&a…

【MySQL】复合查询(重点)

🏠 大家好,我是 兔7 ,一位努力学习C的博主~💬 🍑 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀 🚀 如有不懂,可以随时向我提问&…

实验篇(7.2) 13. 创建点对点安全隧道 (二)(FortiGate-IPsec) ❀ 远程访问

【简介】上一篇实验发现,两端都是可以远程的公网IP的话,两端防火墙都可以发出连接请求,并且都能够连通。这样的好处是安全隧道不用随时在线,只在有需求时才由发起方进行连接。但是现实中很多情况下只有一端公网IP可以远程&#xf…

番外篇 离线服务器环境配置与安装

(离线远程服务器的Anaconda安装与卸载torch的安装与卸载) 我参考或百度一些博主发的经验贴关于Anaconda的安装与卸载等教程,但实际情况是每一个服务器遇到的问题多多少少总有不一样的地方,虽然可以借鉴,但不能完全照搬…

常见Visual Studio Code 快捷键

一,文件与窗口快捷键: 1.打开一个新窗口: CtrlShiftN 2.关闭窗口: CtrlShiftW 3.文件切换:CtrlTab 4.快速打开文件:CtrlP 5.新建文件: CtrlN 6.切换侧边栏:CtrlB 7.选中单个文…

JWT代码实现

什么是 JWT? JSON Web Token,通过数字签名的方式,以 JSON 对象为载体,在不同的服务终端之间安全的传输信 息。(将信息进行封装,以 JSON 的形式传递) JWT 有什么用? JWT 最常见的场景就是授权认证,一旦用户…

web3.0 爆红是炒作还是真有赚头?

前言 最近两年虽然疫情肆虐全球,虽然困得住人们的脚步,但是困不住科技的发展趋势,前有元宇宙,后有 web3.0,新的热点一个接着一个的出现,技术革新也是越来越快,之前只能在科幻电影、科幻小说中出…

SIFT算法

文章目录 1. SIFT算法简介1.1 SIFT特征检测步骤1.2 SIFT算法的特点 2. SIFT算法原理2.1 尺度空间2.1.1 多分辨率金字塔2.1.2 高斯金字塔2.1.3 高斯尺度空间(使用不同的参数) 2.2 DoG空间极值检测(查找关键点)2.3 删除不好的极值点…

二、Kafka生产与消费全流程

Kafka生产与消费全流程 Kafka是一款消息中间件,消息中间件本质就是收消息与发消息,所以这节课我们会从一条消息开始生产出发,去了解生产端的运行流程,然后简单的了解一下broker的存储流程,最后这条消息是如何被消费者…

JVM笔记(一)

走进JVM JVM相对于Java应用层的学习难度更大,**开篇推荐掌握的预备知识:**C/C(关键)、微机原理与接口技术、计算机组成原理、操作系统、数据结构与算法、编译原理(不推荐刚学完JavaSE的同学学习),如果没有掌握推荐的一…

javac 无效的目标发行版: xx

一、检查系统JDK版本 java --version 如果不符合&#xff0c;重新配置系统环境。 二、检查IDEA设置 1、项目结构->项目->SDK和语言级别 2、 项目结构->模块->设置每一个模块的语言级别。 3、java编译器&#xff0c;模块预言级别。 三、检查pom文件 <!--Licens…

qt学习——基本使用、对象树、按钮、信号与槽

初识qt **qt****qt命名规范以及相关快捷键的使用****QPushButton****对象树****点击按钮关闭窗口****信号和槽****标准的信号和槽****自定义信号和槽****带参数的自定义信号和槽传参以及函数的二义性问题** qt qt命名规范以及相关快捷键的使用 优点:Qt相对于C&#xff0c;有一…

华为OD机试真题 JavaScript 实现【狼羊过河】【2022Q4 100分】,附详细解题思路

一、题目描述 一农夫带着m只羊&#xff0c;n只狼过河&#xff0c;农夫有一条可载x只狼/羊的船&#xff1b;农夫在时或者羊的数量大于狼时&#xff0c;狼不会攻击羊&#xff1b; 农夫在不损失羊的情况下&#xff0c;运输几次可以完成运输&#xff1f; 返程不计入次数。 二、…

Vue中如何进行表单联动与级联选择?

Vue中如何进行表单联动与级联选择&#xff1f; 表单联动和级联选择是Vue.js中常见的功能。表单联动是指在一个表单中&#xff0c;当某一个输入框的值发生变化时&#xff0c;其他输入框的值也会随之改变。级联选择是指在一个选择框中&#xff0c;当选择一个选项时&#xff0c;另…

领域建模之数据模型设计方法论 | 京东云技术团队

本文通过实际业务需求场景建模案例&#xff0c;为读者提供一种业务模型向数据模型设计的方法论&#xff0c;用于指导实际开发中如何进行业务模型向数据模型转化抽象&#xff0c;并对设计的数据模型可用性、扩展性提供了建议性思考。通过文章&#xff0c;读者可以收获到业务模型…

linux 漏洞升级、初次安装 mysql

文章目录 适用安装遇到问题 适用 1、为解决Mysql漏洞而需要离线升级mysql版本&#xff1b; 2、初次安装Mysql也可以参考本文&#xff1b; 安装 提示&#xff1a;首次安装可跳过第二步、第三步 一、查看CentOS7系统自带mariadb # 查看系统自带的Mariadb [rootiZ2ze3hm3gyjy…

最全Java锁详解:独享锁/共享锁+公平锁/非公平锁+乐观锁/悲观锁

乐观锁 VS 悲观锁 乐观锁与悲观锁是一种广义上的概念&#xff0c;体现了看待线程同步的不同角度&#xff0c;在Java和数据库中都有此概念对应的实际应用。 1.乐观锁 顾名思义&#xff0c;就是很乐观&#xff0c;每次去拿数据的时候都认为别人不会修改&#xff0c;所以不会上…

英语中-后置定语

一般说来&#xff0c;形容词放在所修饰名词的前面。单个的现在分词、过去分词以及动名词作定语&#xff0c;都是放在所修饰名词&#xff08;或代词&#xff09;的前面。这些称为前置定语。 例如&#xff1a; a red flower/ an interesting story&#xff0c;这里red, interes…

SaaS人力资源管理系统的Bug

SaaS人力资源管理系统的Bug Bug1【18】 这里我是直接把代码复制过来的&#xff0c;然后就有一个空白 这是因为它的代码有问题&#xff0c;原本的代码如下所示 <el-table-column fixed type"index" label"序号" width"50"></el-table-co…

ssm+java在线考试批改阅卷系统

本次学校在线考试系统的实现过程&#xff0c;它的开发使用B/S结构即浏览器和服务器结构框架&#xff0c;采用SSM框架技术&#xff0c;数据库使用了mysql数据库&#xff0c;页面设计采用了MVC框架&#xff0c;后端采用了SSM框架技术scrip等其他一些脚本语言&#xff0c;使用到在…