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

Ubuntu22.04之禁止内核自动更新(二百六十八)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者

新书发布:《Android系统多媒体进阶实战》🚀
优质专栏: Audio工程师进阶系列原创干货持续更新中……】🚀
优质专栏: 多媒体系统工程师系列原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀

人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.

更多原创,欢迎关注:Android系统攻城狮

欢迎关注Android系统攻城狮

🍉🍉🍉文章目录🍉🍉🍉

    • 🌻1.前言
    • 🌻2.Ubuntu22.04内核自动更新带来的问题
    • 🌻3.解决方案
      • 🐓3.1 查看Ubuntu22.04内核可用版本
      • 🐓3.2 方案一:配置禁止内核自动更新
      • 🐓3.3 方案二:固定内核版本

🌻1.前言

本篇目的:Ubuntu22.04之禁止内核自动更新

🌻2.Ubuntu22.04内核自动更新带来的问题

  • Ubuntu 22.04作为一款广受欢迎的操作系统,其内核自动更新功能虽然旨在提高系统安全性和稳定性,但实际上可能会带来以下问题:
  1. 系统兼容性问题:内核更新后,部分硬件驱动程序可能不再兼容新内核,导致硬件设备无法正常工作。例如,显卡、网卡、声卡等硬件设备可能出现识别失败或功能受限的情况。
  2. 软件兼容性问题:一些第三方软件或依赖特定内核版本的软件,在内核更新后可能无法正常运行。这可能导致软件崩溃、功能失效,甚至数据丢失。
  3. 系统稳定性风险:新内核可能存在未知bug,导致系统崩溃、死机等现象。尤其在更新初期,内核稳定性尚未得到充分验证,风险较高。
  4. 启动时间延长:内核更新后,系统启动时可能会出现引导菜单等待时间过长的情况,影响用户体验。
  5. 网络连接问题:更新内核后,部分网络驱动程序可能无法正常加载,导致网络连接不稳定或无法连接网络。
  6. 系统性能下降:新内核可能对某些硬件性能优化不足,导致系统运行速度变慢,影响用户体验。
  7. 恶意软件风险:虽然内核更新旨在修复安全漏洞,但更新过程中可能引入新的漏洞,使系统面临恶意软件攻击的风险。
  8. 更新失败:在更新过程中,可能会出现下载失败、安装失败等问题,导致系统无法正常启动。
  9. 数据丢失风险:在某些情况下,内核更新可能导致系统分区表损坏,进而导致数据丢失。
  10. 系统恢复困难:一旦内核更新出现问题,普通用户可能难以恢复到更新前的状态,导致系统长时间无法正常使用。
  11. 资源占用增加:新内核可能对系统资源的需求更高,导致内存、CPU等资源占用增加,影响其他软件的运行。
  12. 驱动更新滞后:内核更新后,部分硬件厂商的驱动程序可能尚未适配新内核,导致硬件性能无法充分发挥。
  13. 系统安全策略变更:内核更新可能涉及系统安全策略的调整,可能导致原有安全设置失效。
  14. 用户习惯改变:内核更新可能改变系统的一些默认设置,用户需要重新适应新设置。
  • Ubuntu 22.04内核自动更新虽然有助于提高系统安全性和稳定性,但同时也带来了一系列潜在问题。用户在享受便利的同时,也应关注这些问题,以确保系统正常运行。

🌻3.解决方案

🐓3.1 查看Ubuntu22.04内核可用版本

# dpkg --list | grep -E "linux-modules|linux-headers|linux-image"
ii  linux-headers-6.5.0-44-generic                              6.5.0-44.44~22.04.1                                            amd64        Linux kernel headers for version 6.5.0 on 64 bit x86 SMP
ii  linux-headers-6.8.0-40-generic                              6.8.0-40.40~22.04.3                                            amd64        Linux kernel headers for version 6.8.0 on 64 bit x86 SMP
ii  linux-headers-generic-hwe-22.04                             6.8.0-40.40~22.04.3                                            amd64        Generic Linux kernel headers
rc  linux-image-6.5.0-18-generic                                6.5.0-18.18~22.04.1                                            amd64        Signed kernel image generic
rc  linux-image-6.5.0-35-generic                                6.5.0-35.35~22.04.1                                            amd64        Signed kernel image generic
rc  linux-image-6.5.0-41-generic                                6.5.0-41.41~22.04.2                                            amd64        Signed kernel image generic
ii  linux-image-6.5.0-44-generic                                6.5.0-44.44~22.04.1                                            amd64        Signed kernel image generic
ii  linux-image-6.8.0-40-generic                                6.8.0-40.40~22.04.3                                            amd64        Signed kernel image generic
ii  linux-image-generic-hwe-22.04                               6.8.0-40.40~22.04.3                                            amd64        Generic Linux kernel image
rc  linux-modules-6.5.0-18-generic                              6.5.0-18.18~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
rc  linux-modules-6.5.0-35-generic                              6.5.0-35.35~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
rc  linux-modules-6.5.0-41-generic                              6.5.0-41.41~22.04.2                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
ii  linux-modules-6.5.0-44-generic                              6.5.0-44.44~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
ii  linux-modules-6.8.0-40-generic                              6.8.0-40.40~22.04.3                                            amd64        Linux kernel extra modules for version 6.8.0 on 64 bit x86 SMP
rc  linux-modules-extra-6.5.0-18-generic                        6.5.0-18.18~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
rc  linux-modules-extra-6.5.0-35-generic                        6.5.0-35.35~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
rc  linux-modules-extra-6.5.0-41-generic                        6.5.0-41.41~22.04.2                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
ii  linux-modules-extra-6.5.0-44-generic                        6.5.0-44.44~22.04.1                                            amd64        Linux kernel extra modules for version 6.5.0 on 64 bit x86 SMP
ii  linux-modules-extra-6.8.0-40-generic                        6.8.0-40.40~22.04.3                                            amd64        Linux kernel extra modules for version 6.8.0 on 64 bit x86 SMP

🐓3.2 方案一:配置禁止内核自动更新

  • 第一处修改:
# sudo vim /etc/apt/apt.conf.d/10periodic
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "1";
修改为:
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";
  • 第二处修改:
# sudo vim /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "1";
修改为:
APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
APT::Periodic::Unattended-Upgrade "0";

🐓3.3 方案二:固定内核版本

  • 1.查看当前使用的内核版本号
# uname -a
Linux localhost 6.8.0-40-generic #40~22.04.3-Ubuntu SMP PREEMPT_DYNAMIC Tue Jul 30 17:30:19 UTC 2 x86_64 x86_64 x86_64 GNU/Linux

Linux内核版本号为:6.8.0-40

  • 2.固定内核版本:
# sudo apt-mark hold linux-image-6.8.0-40-generic
# sudo apt-mark hold linux-headers-6.8.0-40-generic
# sudo apt-mark hold linux-modules-extra-6.8.0-40-generic
  • 3.恢复内核更新
# sudo apt-mark unhold linux-image-6.8.0-40-generic 
# sudo apt-mark unhold linux-headers-6.8.0-40-generic 
# sudo apt-mark unhold linux-modules-extra-6.8.0-40-generic

相关文章:

Ubuntu22.04之禁止内核自动更新(二百六十八)

简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者 新书发布:《Android系统多媒体进阶实战》🚀 优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏: 多媒体系统工程师系列【…...

kaggle题-房价预测(Pytorch),手把手教,全文代码解释

房价预测 本题是经典的通过表格数据去预测最终值,主要分为几大步骤: 一.将数据集修改为可以代入到网络模型的数字,因为给的数据大部分都是str类型,是无法直接放到网络模型里跑的,例如下图,很多标签值为str类…...

PulseSensor心率传感器详解(STM32)

目录 一、介绍 二、传感器原理 1.接线图 2.引脚描述 3.工作原理:光电容积法原理 4.工作原理:心率采样数据处理算法 三、程序设计 main.c文件 adcx.h文件 adc.c文件 四、实验效果 五、资料获取 项目分享 一、介绍 PulseSensor传感器是一种基…...

NISP 一级 | 3.1 网络基础知识

关注这个证书的其他相关笔记:NISP 一级 —— 考证笔记合集-CSDN博客 0x01:Internet 和 TCP/IP 协议 因特网(Internet)通过 TCP/IP 协议将遍布在全世界各地的计算机互联,从而形成超级计算机网络。因特网为用户提供了非…...

模拟网络丢包常用方法以及工具

文章目录 背景常用方法代码实现使用方法测试代码 使用网络流量控制工具 常用工具Clumsy 背景 在软件开发过程中,经常需要模拟不同的网络环境来测试应用在不同条件下的表现。 这些模拟可以采用多种方式进行,包括在代码中实现随机丢包、随机延时、乱序&am…...

ABC 370 E - Avoid K Partition

原题链接:E - Avoid K Partition 题意:给长度为n的数组,将数组划分成任意份,但是每一份的总和都不能是k,问有多少种分割方法。 思路:dp,f[i],代表前i个元素满足题意的划分的总和&a…...

C++: set与map容器的介绍与使用

本文索引 前言1. 二叉搜索树1.1 概念1.2 二叉搜索树操作1.2.1 查找与插入1.2.2 删除1.2.3 二叉搜索树实现代码 2. 树形结构的关联式容器2.1 set的介绍与使用2.1.1 set的构造函数2.1.2 set的迭代器2.1.3 set的容量2.1.4 set的修改操作 2.2 map的介绍与使用2.2.1 map的构造函数2.…...

单片机-STM32 看门狗(八)

目录 一、看门狗概念 1、定义: 二、单片机中的看门狗 1、功能描述: 2、看门狗设置部分 预分频寄存器(IWDG_PR) 3、窗口看门狗 特性: 4、看门狗配置: 一、看门狗概念 看门狗--定时器(不属于基本定时器、通用定…...

iOS 18.1将上线新功能,可惜这波国内的小伙伴无缘了

在科技巨头苹果持续推动其生态系统全球化的进程中,最新的iOS 18.1、iPadOS 18.1及macOS 15.1开发者测试版发布,不仅为开发者们带来了新功能的预览,还悄然间对Apple智能功能的地区限制进行了微妙而重要的调整。 这一变化,虽看似细…...

MySQL中DML操作(二)

默认值处理(DEFAULT) 在MySQL中可以使用DEFAULT为列设定一个默认值。如果在插入数据时并未指定该列的值,那么MySQL将默认值添加到该列中。 创建表时指定列的默认值 CREATE TABLE 表名(列名 类型 default 默认值......); 示例:…...

LLMs技术 | 整合Ollama实现本地LLMs调用

前言 近两年AIGC发展的非常迅速,从刚开始的只有ChatGPT到现在的很百家争鸣。从开始的大参数模型,再到后来的小参数模型,从一开始单一的文本模型到现在的多模态模型等等。随着一起进步的不仅仅是模型的多样化,还有模型的使用方式。…...

【C-实践】文件服务器(3.0)

文件服务器1.0文件服务器2.0文件服务器4.0 概述 使用了 tcp epoll 线程池 生产者消费者模型,实现文件服务器 有两个进程,主进程负责接收退出信号用来退出整个程序;子进程负责管理线程池、客户端连接以及线程池的退出 子进程中的主线程生…...

LeetCode 2181.合并零之间的节点

题目描述 给你一个链表的头节点 head ,该链表包含由 0 分隔开的一连串整数。链表的 开端 和 末尾 的节点都满足 Node.val 0 。 对于每两个相邻的 0 ,请你将它们之间的所有节点合并成一个节点,其值是所有已合并节点的值之和。然后将所有 0 …...

千益畅行,共享旅游卡,引领旅游新潮流

千益畅行旅游卡是一款专为旅游爱好者打造的超值卡片。它就像一把神奇的钥匙,为您打开国内丰富多彩的旅游世界。 我们的旅游卡拥有众多令人惊喜的特点。首先,它涵盖了国内 40 多条精心策划的旅游线路,无论您是向往历史文化名城的厚重底蕴&…...

K均值聚类

根据到给点样本的距离,来聚类。 1.曼哈顿距离、 2.欧几里得距离 直线距离 3.切比雪夫距离 4.闵氏距离 5.余弦相似度 对数据大小/长度等不关注,只关注相似度。 6.汉明距离 二进制距离 二、密度聚类 DBSCAN 前提是样本是根据紧密程度分布的。 先用超参…...

【Ubuntu】安装常用软件包

安装java 直接输入java,如果没有安装的话会提醒你输入命令安装,类似 Command java not found, but can be installed with: sudo apt install jdkxxxxxxxxxxxxxx然后选一个版本安装就好,我这里选的jdk17,安装完确认一下 ubuntuVM-4-13-ubu…...

探索全光网技术 | 全光网产品解决方案整理-(宇洪科技)

探索全光网技术 |全光网产品解决方案整理-宇洪科技 目录 一、数据中心场景1、方案概述2、方案需求3、相关产品4、产品推荐5、方案价值 二、教育场景1、方案概述2、方案需求3、相关产品4、方案价值 三、医疗场景1、方案概述2、方案需求3、相关产品4、方案价值 注:本文…...

资料分析(2)

C B 增长量不变就是1002020 上面是利滚利:按照20%当利息 本题:涨跌幅度的意思就是增长率,本题是按照增长率不变的情况下进行计算D B 7551400X>1.2*100000 B B B 总体增量部分增量之和 先进行计算固定通信业务收入的增长量移动通信业务实现收入的增长量 增长量现期…...

百元以下蓝牙耳机性价比之王品牌?四大高能性价比机型推荐

面对市场上琳琅满目的蓝牙耳机品牌和型号,消费者往往难以抉择,特别是当预算限定在百元以下时,找到一款既满足基本功能又具备一定品质的蓝牙耳机变得尤其困难,那么百元以下蓝牙耳机性价比之王品牌?尽管价格是一个重要的…...

考场考生行为检测数据集 7000张 带标注 voc yolo

数据集名称: 考场考生行为检测数据集 数据集规模: 图像数量:7000张标注类型:行为检测(例如:作弊、玩手机、睡觉等)格式兼容性:支持VOC和YOLO标注格式 数据集内容: 该…...

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...

生成xcframework

打包 XCFramework 的方法 XCFramework 是苹果推出的一种多平台二进制分发格式,可以包含多个架构和平台的代码。打包 XCFramework 通常用于分发库或框架。 使用 Xcode 命令行工具打包 通过 xcodebuild 命令可以打包 XCFramework。确保项目已经配置好需要支持的平台…...

AI Agent与Agentic AI:原理、应用、挑战与未来展望

文章目录 一、引言二、AI Agent与Agentic AI的兴起2.1 技术契机与生态成熟2.2 Agent的定义与特征2.3 Agent的发展历程 三、AI Agent的核心技术栈解密3.1 感知模块代码示例:使用Python和OpenCV进行图像识别 3.2 认知与决策模块代码示例:使用OpenAI GPT-3进…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院查看报告小程序

一、开发环境准备 ​​工具安装​​: 下载安装DevEco Studio 4.0(支持HarmonyOS 5)配置HarmonyOS SDK 5.0确保Node.js版本≥14 ​​项目初始化​​: ohpm init harmony/hospital-report-app 二、核心功能模块实现 1. 报告列表…...

【从零学习JVM|第三篇】类的生命周期(高频面试题)

前言: 在Java编程中,类的生命周期是指类从被加载到内存中开始,到被卸载出内存为止的整个过程。了解类的生命周期对于理解Java程序的运行机制以及性能优化非常重要。本文会深入探寻类的生命周期,让读者对此有深刻印象。 目录 ​…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

算术操作符与类型转换:从基础到精通

目录 前言:从基础到实践——探索运算符与类型转换的奥秘 算术操作符超级详解 算术操作符:、-、*、/、% 赋值操作符:和复合赋值 单⽬操作符:、--、、- 前言:从基础到实践——探索运算符与类型转换的奥秘 在先前的文…...

C# winform教程(二)----checkbox

一、作用 提供一个用户选择或者不选的状态,这是一个可以多选的控件。 二、属性 其实功能大差不差,除了特殊的几个外,与button基本相同,所有说几个独有的 checkbox属性 名称内容含义appearance控件外观可以变成按钮形状checkali…...

Element-Plus:popconfirm与tooltip一起使用不生效?

你们好&#xff0c;我是金金金。 场景 我正在使用Element-plus组件库当中的el-popconfirm和el-tooltip&#xff0c;产品要求是两个需要结合一起使用&#xff0c;也就是鼠标悬浮上去有提示文字&#xff0c;并且点击之后需要出现气泡确认框 代码 <el-popconfirm title"是…...