如何在 Ubuntu 中更新 Linux 内核
Linux内核是操作系统的基础,对操作系统的性能起着至关重要的作用。Linux开发人员通过补丁和更新不断增强内核,解决安全性、功能性和速度问题。及时了解这些发展对于确保机器以最佳方式运行至关重要。
本文教您如何使用三种不同的方法更新 Ubuntu 中的 Linux 内核。
先决条件
- Ubuntu 系统。
- 访问终端。
- 具有sudo 权限的用户帐户。
方法 1:使用系统更新流程
系统更新过程是一种将所有软件包(包括 Linux 内核)更新到最新可用版本的直接方法。在开始之前,请使用uname命令检查当前内核版本:
uname -r

输出包括:
- 6.2.0——内核版本号。
- 37-内核的特定版本或版本号。
- generic - 表示内核风格。generic风格是常规桌面和服务器系统的常见选择
步骤 1:更新系统软件包
用于更新本地软件包索引。该命令从系统上配置的存储库sudo apt update中检索有关最新可用软件包版本的信息。
使用此命令:
sudo apt update

如果有较新的内核版本,该命令会找到它并将其标记为可供下载和安装。但是,该命令不会安装或升级任何软件包。
第 2 步:运行升级
要将已安装的软件包(包括内核)升级到存储库中可用的最新版本,请运行:
sudo apt upgrade

此命令安装最新的 Linux 内核版本。使用 验证更改uname -r。
uname -r

在这种情况下,输出没有改变,因为内核已经是最新版本。
注意: 如果除了更新内核版本之外,你还要升级到新的 Ubuntu 版本(例如,从Ubuntu 20.04升级到22.04),请使用sudo apt-get dist-upgrade。此命令处理依赖项的更改并管理主要系统升级。
方法 2:使用系统更新过程强制更新 Ubuntu 内核
有时,会发布较新的内核,但尚未针对您的Ubuntu 版本进行测试。例如,用户可能使用 Ubuntu 22.04,并知道 Ubuntu 23.10 有较新的内核版本可用。
这种方法可以升级内核,但是该过程需要更多的工作,包括备份重要文件。
步骤 1:使用软件更新程序
备份文件后,请按照以下步骤操作:
1. 按下超级键(大多数键盘上的Windows键)并搜索以找到软件更新程序。

2. 启动软件更新程序。

3. 确认是否不需要更新或是否必须执行必要的更新。在我们的例子中,系统是最新的。

4.单击“设置 和Livepatch”按钮并继续下面的步骤2。

步骤 2:配置软件更新程序
点击“设置和 Livepatch”按钮后,将出现一个新窗口。请按照以下步骤配置设置:
1. 导航到“更新”选项卡。

2. 找到已订阅下拉菜单并选择所有更新。
3. 在选项卡的底部,找到下拉菜单“通知我新的 Ubuntu 版本”。

4. 选择两者之一,但不要选择“从不”:
- 适用于长期支持版本。当稳定性至关重要,并且您更喜欢更可预测且经过彻底测试的环境时。
- 对于任何新版本。如果您能接受偶尔的更改,乐于尝试新功能,并容忍潜在的问题。
5. 关闭此窗口然后重新打开。如果系统需要更新,应用程序会提供升级到最新版本的选项。
步骤3:强制升级
如果系统不提供升级,请强制升级:
sudo do-release-upgrade
注意:该sudo do-release-upgrade命令有时会打印ERROR: failed to read '/etc/update-manager/release-upgrades'。要解决此问题,请在您选择的文本编辑器中访问/etc/update-manager/release-upgrades并将该行替换为。Prompt=ltsPrompt=normal
系统显示新内核和 Ubuntu 版本的发行说明。例如,在此示例中,终端显示有关新 Ubuntu 版本 Ubuntu 23.04 Lunar Lobster 的详细信息。

要升级,请向下滚动到底部并选择y以获取最新的 Ubuntu 和内核版本。

方法 3:手动更新内核(高级步骤)
要升级到最新的(未经测试的)内核并接受风险,还有第三个程序,即使用 Mainline 选择和安装新内核。
这个用户友好的工具简化了 Linux 内核的更新,但它并未预装在大多数 Linux 系统上。请按照以下部分中此方法的步骤进行操作。
步骤 1:安装并启动 Mainline
如果您的系统上没有 Mainline:
1. 使用以下命令将 cappelikan 维护的 PPA 添加到软件源或存储库列表中:
sudo add-apt-repository ppa:cappelikan/ppa

此 PPA 由用户 cappelikan 维护,包含 Mainline 内核安装程序。添加此 PPA 后,即可在 Ubuntu 系统上安装 Mainline 软件。
2. 使用以下命令刷新数据库:
sudo apt update
3. 使用以下命令安装 Mainline:

4. 使用以下方式启动 Mainline:
sudo mainline
Mainline 界面会启动并显示可用的 Linux 内核版本。如果没有显示,请按Super键(Windows键)并搜索 Mainline 来访问界面。

第 2 步:安装内核
要获取特定内核,请在列表中找到并选择它。接下来,单击右侧的“安装”按钮。

内核安装完成后,重新启动系统。
步骤3:卸载内核
如果出现问题,请从启动屏幕中选择以前的内核版本来恢复该过程。具体操作如下:
1. 重新启动系统并按住 Shift 键或 Esc 键(具体取决于Linux 发行版)。
2. 选择Ubuntu 的高级选项。

3. 选择以前的内核(通过版本号标识)。
另一种方法是使用 Mainline删除 Ubuntu 上的旧内核。为此,请单击先前安装的(或任何较旧的)内核版本,然后在右侧选择“卸载” 。

结论
阅读本教程后,您现在知道如何使用不同的方法更新 Linux 内核。
相关文章:
如何在 Ubuntu 中更新 Linux 内核
Linux内核是操作系统的基础,对操作系统的性能起着至关重要的作用。Linux开发人员通过补丁和更新不断增强内核,解决安全性、功能性和速度问题。及时了解这些发展对于确保机器以最佳方式运行至关重要。 本文教您如何使用三种不同的方法更新 Ubuntu 中的 L…...
FilterListenerAjax
今日目标: 能够使用 Filter 完成登陆状态校验功能能够使用 axios 发送 ajax 请求熟悉 json 格式,并能使用 Fastjson 完成 java 对象和 json 串的相互转换使用 axios + json 完成综合案例1,Filter 1.1 Filter概述 Filter 表示过滤器,是 JavaWeb 三大组件(Servlet、Filter、…...
27. 移除元素 C++
文章目录 一、题目链接二、参考代码三、所思所悟 一、题目链接 链接: 27. 移除元素 二、参考代码 思路1:找到需要移除的数组元素,将右侧全部元素向左覆盖 int removeElement(vector<int>& nums, int val) {int size nums.size();for (int …...
大模型专栏--Spring Ai Alibaba介绍和功能演示
Spring AI Alibaba 介绍和功能演示 背景 Spring AI Alibaba 开源项目基于 Spring AI 构建,是阿里云通义系列模型及服务在 Java AI 应用开发领域的最佳实践,提供高层次的 AI API 抽象与云原生基础设施集成方案,帮助开发者快速构建 AI 应用。…...
Redis设计与实现第17章 -- 集群 总结2(执行命令 重新分片)
17.3 在集群中执行命令 接收命令的节点会计算出命令要处理的数据库键属于哪个槽,并检查这个槽是否指派给了自己: 如果是的话,直接执行这个命令 否则,节点向客户端返回一个MOVED错误,指引客户端转向redirect至正确的节…...
微服务搭建----springboot接入Nacos2.x
springboot接入Nacos2.x nacos之前用的版本是1.0的,现在重新搭建一个2.0版本的,学如逆水行舟,不进则退,废话不多说,开搞 1、 nacos2.x搭建 1,首先第一步查询下项目之间的版本对照,不然后期会…...
3.建立本地仓库及常用命令
1.建立本地仓库 要使用Git对我们的代码进行版本控制,首先需要获得本地仓库 1)在电脑的任意位置创建一个空目录,作为我们的本地Git仓库 2)进入这个目录,右键点击Git Bash 窗口 3)执行命令git init 4) 如果创…...
linux arm下获取屏幕事件(rk3588)
1、找到屏幕设备名称 cat /proc/bus/input/devices我的屏幕设备是ILITEK ILITEK-TP,它的设备名称是event1. 2、读取屏幕事件。 方法1: cat /dev/input/event1 | hexdump方法2: 3、c代码实现 #include <stdio.h> #include <unis…...
【机器学习】人工智能与气候变化:利用深度学习与机器学习算法预测和缓解环境影响
📝个人主页:哈__ 期待您的关注 目录 🔥引言 1.1 背景介绍 1.2 人工智能与机器学习的崛起 1.3 本文内容概述 🔨气候变化的挑战 2.1 现今气候变化带来的影响和挑战 2.2 引发关注的气候变化趋势和数据 🤖人工智能…...
物联网射频识别和RFID开发(二):RFID原理及硬件组成
一、RFID无线识别的原理 (一)读写器与标签之间的无线电波交互方式 1、电感耦合 2、电磁反向散射耦合 (二)标签是如何将数据反馈给读写器的 1、电感耦合中的负载调试 2、电磁反向散射耦合中的负载调制 二、RFID无线通信中的调制…...
LeetCode763. 划分字母区间(2024冬季每日一题 23)
给你一个字符串 s 。我们要把这个字符串划分为尽可能多的片段,同一字母最多出现在一个片段中。 注意,划分结果需要满足:将所有划分结果按顺序连接,得到的字符串仍然是 s 。 返回一个表示每个字符串片段的长度的列表。 示例 1&a…...
python调用GPT-4o实时音频 Azure OpenAI GPT-4o Audio and /realtime
发现这块网上信息很少,记录一下 微软azure入口 https://learn.microsoft.com/zh-cn/azure/ai-services/openai/realtime-audio-quickstart?pivotsprogramming-language-ai-studio sdk文档 https://github.com/azure-samples/aoai-realtime-audio-sdk?tabread…...
Hadoop生态圈框架部署 伪集群版(四)- Zookeeper单机部署
文章目录 前言一、Zookeeper单机部署(手动部署)1. 下载Zookeeper安装包到Linux2. 解压zookeeper安装包3. 配置zookeeper配置文件4. 配置Zookeeper系统环境变量5. 启动Zookeeper6. 停止Zookeeper在这里插入图片描述 注意 前言 本文将详细介绍Zookeeper的…...
LuaJava
一、什么是LuaJava LuaJava是一个Java脚本工具。该工具的目标是允许用Lua编写的脚本操纵用 Java开发的组件。LuaJava允许使用与访问Lua的本机对象相同的语法从Lua访问Java组件,而不需要任何声明或任何类型的预处理。 LuaJava还允许在Lua中实现任何Java接口&#x…...
Maven下载安装、环境配置(超详细)(包括Java环境配置(Windows)、在IDEA中配置Maven)
目录 一、引言 二、下载和安装 Maven (1)首先保证 Java 的环境是正常的。 1、电脑桌面上右击 " 此电脑 ",点击属性。 2、点击高级系统设置。 3、点击环境变量。 4、找到系统变量中的 Path。 5、点击新建,然后把想要配置…...
Python中的实例方法、静态方法和类方法三者区别?
1、实例方法 不用classmethod和staticmethod修饰的方法为实例方法。在类中定义的方法默认都是实例方法。实例方法最大的特点是它至少要包含一个self参数,用于绑定调用此方法的实例对象,实例方法通常可以用类对象直接调用。 2、类方法 采用classmethod…...
【学习Go编程】
了解Go语言的基本概念: 学习Go的基本语法、数据类型、控制结构等。可以参考官方文档或基础教程来入门。 安装Go环境: 访问Go语言的官方网站,下载并安装适合你操作系统的Go编程环境。配置好环境变量,确保可以在命令行中使用go命令…...
Linux系统:网络
目录 一、网络协议 1.网络协议概念 2.协议分层 3.OSI七层模型和TCP/IP五层(或四层)模型 4.为什么要有网络协议? 5.网络通信协议的原理 二、网络传输的基本流程 1.局域网的网络传输流程 1.MAC地址 2.局域网通信原理(以太网…...
shodan2-批量查找CVE-2019-0708漏洞
声明! 学习视频来自B站up主 泷羽sec 有兴趣的师傅可以关注一下,如涉及侵权马上删除文章,笔记只是方便各位师傅的学习和探讨,文章所提到的网站以及内容,只做学习交流,其他均与本人以及泷羽sec团队无关&#…...
面向对象(二)——类和对象(上)
1 类的定义 做了关于对象的很多介绍,终于进入代码编写阶段。 本节中重点介绍类和对象的基本定义,属性和方法的基本使用方式。 【示例】类的定义方式 // 每一个源文件必须有且只有一个public class,并且类名和文件名保持一致! …...
C++_核心编程_多态案例二-制作饮品
#include <iostream> #include <string> using namespace std;/*制作饮品的大致流程为:煮水 - 冲泡 - 倒入杯中 - 加入辅料 利用多态技术实现本案例,提供抽象制作饮品基类,提供子类制作咖啡和茶叶*//*基类*/ class AbstractDr…...
Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...
练习(含atoi的模拟实现,自定义类型等练习)
一、结构体大小的计算及位段 (结构体大小计算及位段 详解请看:自定义类型:结构体进阶-CSDN博客) 1.在32位系统环境,编译选项为4字节对齐,那么sizeof(A)和sizeof(B)是多少? #pragma pack(4)st…...
python/java环境配置
环境变量放一起 python: 1.首先下载Python Python下载地址:Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个,然后自定义,全选 可以把前4个选上 3.环境配置 1)搜高级系统设置 2…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
spring:实例工厂方法获取bean
spring处理使用静态工厂方法获取bean实例,也可以通过实例工厂方法获取bean实例。 实例工厂方法步骤如下: 定义实例工厂类(Java代码),定义实例工厂(xml),定义调用实例工厂ÿ…...
【JavaSE】绘图与事件入门学习笔记
-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角,以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向,距离坐标原点x个像素;第二个是y坐标,表示当前位置为垂直方向,距离坐标原点y个像素。 坐标体系-像素 …...
【Oracle】分区表
个人主页:Guiat 归属专栏:Oracle 文章目录 1. 分区表基础概述1.1 分区表的概念与优势1.2 分区类型概览1.3 分区表的工作原理 2. 范围分区 (RANGE Partitioning)2.1 基础范围分区2.1.1 按日期范围分区2.1.2 按数值范围分区 2.2 间隔分区 (INTERVAL Partit…...
Java毕业设计:WML信息查询与后端信息发布系统开发
JAVAWML信息查询与后端信息发布系统实现 一、系统概述 本系统基于Java和WML(无线标记语言)技术开发,实现了移动设备上的信息查询与后端信息发布功能。系统采用B/S架构,服务器端使用Java Servlet处理请求,数据库采用MySQL存储信息࿰…...
