RHEL - 更新升级软件或系统
《OpenShift / RHEL / DevSecOps 汇总目录》
文章目录
- 小版本软件更新
- yum update 和 yum upgrade 的区别
- 升级软件和升级系统
- 检查软件包是否可升级
- 指定升级软件使用的发行版本
- 方法1
- 方法2
- 方法3
- 方法4
- 查看软件升级类型
- 更新升级指定的 RHSA/RHBA/RHEA
- 更新升级指定的 CVE
- 更新升级指定的 Bug
- 查看软件安装升级操作历史
- undo/rollback 操作
- 大版本系统升级
- 参考
说明:先《RHEL - 订阅、注册系统和 Yum Repository》一文完成 “注册和注销 RHEL 系统” 章节。
小版本软件更新
yum update 和 yum upgrade 的区别
yum update 和 yum upgrade 都会升级软件,唯一的区别是 yum update 使用了 –obsolete flage=0 参数,而 yum upgrade 使用了 –obsolete flage=1 的参数。
yum update 是直接将旧版本软件升级到新版本,因此升级后还会继续保留有些不再被用的旧版文件,而 yum upgrade 是先把旧版本的软件删除后再安装新版软件。
升级软件和升级系统
以下命令分别会升级 rpm 软件和整个系统。
$ yum update rpm
$ yum update
检查软件包是否可升级
只检查软件包是否可用的升级。
$ yum check-update rpm
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is registered with an entitlement server, but is not receiving updates. You can use subscription-manager to assign subscriptions.rpm.x86_64 4.11.3-48.el7_9 rhel-7-server-rpms
指定升级软件使用的发行版本
可以使用以下显式(前一种)或隐式(后三种)的方法指定 yum 命令使用的发行版本。
注意:如果以下方法都不用,则缺省会使用当前主要版本的最新次要版本,例如 7.9。另外显式方法可以覆盖隐式方法所指定的版本。
方法1
- 执行命令检查可更新的 kernel,在参命令参数中显式指定使用的发行版本,
$ yum check-update kernel --releasever=7.6
方法2
注意:该方法只能将使用的版本锁定在当前环境中 redhat-release-server 包所对应的版本。
- 在 /etc/yum.conf 文件中添加以下内容。
distroverpkg=redhat-release-server
- 然后检查可更新的 kernel。
$ yum check-update kernel
方法3
- 执行命令,在 /etc/yum/vars/releasever 文件中设置使用的发行版本,然后检查可更新的 kernel。
$ echo 7.8 > /etc/yum/vars/releasever
$ yum check-update kernel
方法4
- 参照《RHEL - 订阅、注册系统和 Yum Repository》一文的 “将 RHEL 系统关联和取关订阅” 章节完成订阅关联。
- 执行以下命令设置使用的发行版本,然后检查可更新的 kernel。
$ subscription-manager release --show
Release not set$ subscription-manager release --set=7.6
Release set to: 7.6$ yum check-update kernel
查看软件升级类型
- 以下命令可以列出和当前环境有关的所有可用软件更新包:
$ yum updateinfo list
- 还可进一步查看升级包类型,包括 RHSA/RHBA/RHEA。
$ yum updateinfo list --security
$ yum updateinfo list --bugfix
$ yum updateinfo list | grep enhancement
更新升级指定的 RHSA/RHBA/RHEA
$ yum update --advisory=RHSA-2022:6834
更新升级指定的 CVE
$ yum updateinfo list cves
$ yum update --cves=CVE-2022-40674
更新升级指定的 Bug
可以通过 https://access.redhat.com/errata/RHBA-2022:6936 查看一个 RHBA 对应的 Bug 编号,然后使用该编号升级。
$ yum update --bz=2130769
查看软件安装升级操作历史
- 先安装一个软件,然后查看操作历史。
$ yum install createrepo
$ yum history
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is registered with an entitlement server, but is not receiving updates. You can use subscription-manager to assign subscriptions.
ID | Login user | Date and time | Action(s) | Altered
-------------------------------------------------------------------------------2 | root <root> | 2024-01-11 12:01 | Install | 31 | System <unset> | 2023-10-16 02:32 | Install | 342
- 查看 ID 为 2 的详细情况。
$ yum history info 2
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is registered with an entitlement server, but is not receiving updates. You can use subscription-manager to assign subscriptions.
Transaction ID : 2
Begin time : Thu Jan 11 12:01:18 2024
Begin rpmdb : 342:c938f565466bf7a9c8b9740a0504053f5f0b5922
End time : 12:01:24 2024 (6 seconds)
End rpmdb : 345:58ca1f49bd20bfca9e08468a8514a7f9fd62e525
User : root <root>
Return-Code : Success
Command Line : install createrepo
Transaction performed with:Installed rpm-4.11.3-35.el7.x86_64 @anaconda/7.6Installed subscription-manager-1.21.10-2.el7.x86_64 @anaconda/7.6Installed yum-3.4.3-161.el7.noarch @anaconda/7.6
Packages Altered:Install createrepo-0.9.9-28.el7.noarch @rhel-7-server-rpmsDep-Install deltarpm-3.6-3.el7.x86_64 @rhel-7-server-rpmsDep-Install python-deltarpm-3.6-3.el7.x86_64 @rhel-7-server-rpms
history info
undo/rollback 操作
yum history 的 undo 将撤销一个指定的操作事务,而 rollback 将回滚指定事务之后的所有操作事务。
- 以下命令是撤销 ID 为 2 的操作。
$ yum history undo 2
- 以下命令是撤销 ID 为 1 以后的所有操作,即恢复到 ID 为 1 时的状态。
$ yum history rollback 1
大版本系统升级
参见 https://access.redhat.com/labs/rhelupgradehelper,可根据向导可获得跨大版本升级 RHEL 的操作指导。
参考
https://access.redhat.com/solutions/238533
https://access.redhat.com/solutions/10021
https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/system_administrators_guide/ch-yum
https://linuxsimply.com/linux-basics/package-management/upgrade-package/yum-update-vs-upgrade/
https://access.redhat.com/downloads/content/69/ver=/rhel—7/7.9/x86_64/product-errata
https://git.centos.org/rpms/kernel/releases
https://kcm.trellix.com/corporate/index?page=content&id=KB93176
https://www.redhat.com/zh/blog/what-latest-kernel-release-my-version-red-hat-enterprise-linux
https://access.redhat.com/articles/3078
相关文章:

RHEL - 更新升级软件或系统
《OpenShift / RHEL / DevSecOps 汇总目录》 文章目录 小版本软件更新yum update 和 yum upgrade 的区别升级软件和升级系统检查软件包是否可升级指定升级软件使用的发行版本方法1方法2方法3方法4 查看软件升级类型更新升级指定的 RHSA/RHBA/RHEA更新升级指定的 CVE更新升级指定…...

JNPF低代码开发平台总体架构介绍
目录 一、JNPF介绍 二、团队能力 三、技术选型 1.后端技术栈 2.前端技术栈 3.数据库支持 四、JNPF界面示意图 五、开发环境 一、JNPF介绍 JNPF是一款企业级低代码开发平台。基于Springboot、Vue技术,采用微服务、前后端分离架构,基于可视化数据建…...

axios的传参方式
目录 1、data传参 2、使用 params 传递查询参数: 3、使用路径参数传递数据: 在使用 Axios 发送 HTTP 请求时,有三种常见的传参方式:data、params 和路径参数 1、data传参 this.$axios({method: "post",url: "h…...

受电端协议芯片是如何让Type-C接口设备实现快充?
随着科技的不断进步,USB Type-C接口在电子产品中越来越普及。而在这个接口中,Type-c受电端协议芯片起着至关重要的作用。那么,什么是Type-c受电端协议芯片?它又是如何工作的呢?本文将为您揭开Type-c受电端协议芯片的神…...

浪花 - 搜索标签前后端联调
前传:浪花 - 根据标签搜索用户-CSDN博客 目录 一、完善后端搜索标签接口 二、前后端搜索标签接口的对接 1. 使用 Axios 发送请求 2. 解决跨域问题 3. Axios 请求传参序列化 4. 接收后端响应数据 5. 处理后端响应数据格式 6. 搜索结果为空的页面展示 附&am…...

GPU与SSD间的P2P DMA访问机制
基于PCIe(Peripheral Component Interconnect Express)总线连接CPU、独立GPU和NVMe SSD的系统架构。 在该架构中,PCIe Swicth支持GPU与SSD之间快速的点对点直接内存访问(peer-to-peer, p2p DMA)。通常情况下࿰…...

未来的NAS:连接您的数字生活
未来的NAS:连接您的数字生活 引言 网络附加存储(Network Attached Storage,简称NAS)是一种通过网络连接的存储设备,用于集中存储和共享数据。传统的NAS设备通常包含一个或多个硬盘驱动器,可以通过局域网连…...

C++ 设计模式之备忘录模式
【声明】本题目来源于卡码网(题目页面 (kamacoder.com)) 【提示:如果不想看文字介绍,可以直接跳转到C编码部分】 【设计模式大纲】 【简介】 -- 什么是备忘录模式 (第17种模式) 备忘录模式(Meme…...

【项目搭建三】SpringBoot引入redis
添加依赖 本文使用spring data redis访问和操作redis,pom文件中加入以下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </depende…...

漫谈广告机制设计 | 听闻RTA要搞二次竞价了?牛啊!
听闻RTA要搞二次竞价了? 读者群里反馈说,某大厂的RTA支持做二次竞价了。笔者听闻后,竖起了大拇指,牛! RTA RTA(Real Time API), 是一种实时的广告程序接口,用于满足广告主实时个性化的投放需…...

第04章_IDEA的安装与使用(下)(IDEA断点调试,IDEA常用插件)
文章目录 第04章_IDEA的安装与使用(下)8. 快捷键的使用8.1 常用快捷键8.2 查看快捷键1、已知快捷键操作名,未知快捷键2、已知快捷键,不知道对应的操作名 8.3 自定义快捷键8.4 使用其它平台快捷键 9. IDEA断点调试(Debug)9.1 为什么…...

HBase鉴权设计以及Kerberos鉴权方法
文章目录 1. HBase鉴权方式整理2. Kerboers鉴权架构整理2.1 kerberos的实现架构2.2 相关核心参数整理 3. 客户端的鉴权设计3.1 安全管控权限3.2 安全管控级别3.3 相关操作3.3.1 用户授权3.3.2 回收权限 4. 疑问和思考6. 参考文章 鉴权,分别由鉴和权组成 鉴…...

【华为GAUSS数据库】IDEA连接GAUSS数据库方法
背景:数据库为华为gauss for opengauss 集中式数据库 IDEA提供了丰富的各类型数据库驱动,但暂未提供Gauss数据库。可以通过以下方法进行连接。 连接后, 可以自动检查xml文件中的sql语句是否准确,表名和字段名是否正确还可以直接在…...

[java基础揉碎]键盘输入语句
介绍 在编程中,需要接收用户输入的数据,就可以使用键盘输入语句来获取。 需要一个扫描器(对象),就是Scanner 用到的scanner代码例子...

Redis 面试题 | 01.精选Redis高频面试题
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...

Crow:实现点击下载功能
Crow:设置网站的index.html-CSDN博客 讲述了如何完成一个最简单的网页的路由 很多网页提供了下载功能,怎么实现呢,其实也很简单。 假设网页的目录结构如图 $ tree static static ├── img │ └── goodday.jpg └── index.html //index.html <html> <body&…...

2024年华为OD机试真题-内存冷热标记-Python-OD统一考试(C卷)
题目描述: 现代计算机系统中通常存在多级的存储设备,针对海量workload的优化的一种思路是将热点内存页优先放到快速存储层级,这就需要对内存页进行冷热标记。 一种典型的方案是基于内存页的访问频次进行标记,如果统计窗口内访问次数大于等于设定阈值,则认为是热内存页,否…...

Webpack5入门到原理9:处理字体图标资源
1. 下载字体图标文件 打开阿里巴巴矢量图标库选择想要的图标添加到购物车,统一下载到本地 2. 添加字体图标资源 src/fonts/iconfont.ttfsrc/fonts/iconfont.woffsrc/fonts/iconfont.woff2src/css/iconfont.css/注意字体文件路径需要修改 src/main.js import { …...

【Docker】在Windows操作系统安装Docker前配置环境
欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《Docker容器》序列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对…...

Webpack5入门到原理21:提升开发体验
SourceMap 为什么 开发时我们运行的代码是经过 webpack 编译后的,例如下面这个样子: /** ATTENTION: The "eval" devtool has been used (maybe by default in mode: "development").* This devtool is neither made for product…...

YOLOv8改进 | Conv篇 | 在线重参数化卷积OREPA助力二次创新(提高推理速度 + FPS)
一、本文介绍 本文给大家带来的改进机制是一种重参数化的卷积模块OREPA,这种重参数化模块非常适合用于二次创新,我们可以将其替换网络中的其它卷积模块可以不影响推理速度的同时让模型学习到更多的特征。OREPA是通过在线卷积重参数化(Online Convolutional Re-parameteriza…...

conda国内加速
1、配置国内源 conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/ 2、显示源地址 conda config --set show_channel_urls yes...

RabbitMQ-数据持久化
一、持久化类型 1、交换机持久化(SpringAMQP默认) 2、队列持久化(SpringAMQP默认) 3、消息持久化 二、消息持久化 1、纯内存操作 如果采用纯内存操作,那么消息存储达到队列的上限之后,会有一个page ou…...

JS-WebAPIs-本地存储(五)
• 本地存储介绍 以前我们页面写的数据一刷新页面就没有了,是不是?随着互联网的快速发展,基于网页的应用越来越普遍,同时也变的越来越复杂,为了满足各种各样的需求,会经常 性在本地存储大量的数据…...

了解Vue中日历插件Fullcalendar
实现效果如下图: 月视图 周视图 日视图 官方文档地址:Vue Component - Docs | FullCalendar 1、安装与FullCalendar相关的依赖项 npm install --save fullcalendar/vue fullcalendar/core fullcalendar/daygrid fullcalendar/timegrid fullcalend…...

Cloudreve存储策略-通过从机存储来拓展容量
Sham的云服务器是搬瓦工最低低低配的,1H 0.5G不说,硬盘容量也只有10g,说实话,装了宝塔面板和服务器套件后,基本满了,这时又想在云服务器上打个网盘用于下载、存储,这时就需要拓展硬盘࿰…...

java进阶-jvm精讲及实战
深入了解jvm及实战 1.引言2.jvm概念理解 1.引言 jvm是深入了解java底层逻辑的必备知识储备,在中大型开发团队里,中高级工程师必须要了解和掌握,也是中高级工程师面试必考题,在实战中用于程序性能调优,内存泄露分析等 2.jvm概念理解...

vue中引入sass、scss
常规步骤 1. 创建项目 使用vue cli 脚手架工具创建项目 vue create xxxx2. 创建全局样式文件 全局样式变量 路径:/assets/styles/variables.scss //flex 布局变量 $--flex-direction: ("row", "column"); $--flex-position: ("start"…...

Java学习笔记(八)——Lambda表达式
文章目录 Lambda表达式Lambda表达式的省略写法Lambda练习练习1练习2 算法题算法题1 斐波那契数列算法题2 猴子吃桃子算法题3 爬楼梯 Lambda表达式 Lambda表达式是JDK8开始的一种新语法形式。 基本作用:简化函数式接口的匿名内部类的写法。 注意: Lam…...

【JavaEE】CAS
作者主页:paper jie_博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文于《JavaEE》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造&…...