Ubuntu系统更换Linux内核的详细方法汇总

news2024/9/29 7:22:40

文章目录

  • 一、写在前面
  • 二、方法一(手动下载编译安装Linux内核并更换)
  • 三、方法二(自动下载安装Linux内核并更换)
  • 四、最后总结

一、写在前面

  最近在复现Linux内核漏洞的时候,经常需要更换Ubuntu系统的Linux内核版本,但是网上的资料参差不齐,为了方便大家更换Ubuntu系统的Linux内核版本,故写了这篇博客分享给大家,本篇博客提供两种在Ubuntu系统中更换Linux内核版本的详细方法,第一种方法是下载Linux内核源码进行手动编译以及安装,此种方法较为复杂,但是灵活性比较高,可以自行配置Linux内核的各种设置,第二种方法是自动下载安装Linux官网配置好的Linux内核,此种方法较为简单,但是灵活性较低,因为不能自行配置Linux内核的各种设置。对于本篇博客的具体内容就介绍到这里,更换Ubuntu系统的Linux内核版本的具体的两种方法请参见下文


二、方法一(手动下载编译安装Linux内核并更换)

  1. 需要提前说明的是,在此方法中,我所使用的Ubuntu系统版本为18.04.5 LTS(Desktop),不过对于Ubuntu系统的版本并没有额外的要求,任意版本的Ubuntu系统都可使用此方法进行Linux内核的更换(注明我自己的Ubuntu系统版本,完全是因为我有强迫症= =!)。我们首先查看当前Ubuntu系统中的Linux内核的版本:
$ sudo uname -r
  1. 可以发现,当前系统的Linux内核版本为5.4.0-42-generic:
    请添加图片描述
  2. 然后来到系统的根目录,下载5.5.0版本的Linux内核源码压缩包并对其解压(当然也可以使用其它版本的Linux内核,可以在清华源下载各版本的Linux内核的源码):
$ cd /
$ sudo wget https://mirrors.tuna.tsinghua.edu.cn/kernel/v5.x/linux-5.5.tar.gz
$ sudo tar -zxf linux-5.5.tar.gz
  1. 下面就可以开始准备编译安装Linux内核了,但是在正式编译安装内核之前,我们先做一些准备工作,也就是下载安装一些需要的软件:
$ sudo apt-get update
$ sudo apt-get install g++
$ sudo apt-get install gcc
$ sudo apt-get install make
$ sudo apt-get install build-essential libncurses-dev bison flex libssl-dev
  1. 然后我们就可以正式开始编译安装Linux内核了,我们进入到解压后的Linux内核源代码目录中进行清理并配置编译选项:
$ cd linux-5.5/
$ sudo make distclean O=build
$ sudo make menuconfig
  1. 出现如下界面后,选择“Save”后按一下“Enter”:
    在这里插入图片描述
  2. 然后会出现如下界面,选择“Ok”后按一下“Enter”:
    在这里插入图片描述
  3. 然后会出现如下界面,选择“Exit”后按一下“Enter”:
    在这里插入图片描述
  4. 然后会出现如下界面,选择“Exit”后按一下“Enter”:
    在这里插入图片描述
  5. 然后会来到命令行界面,只需要顺序执行如下命令,即可完成Linux 5.5.0版本内核的编译和安装以及内核模块的安装:
$ sudo make -j4
$ sudo make -j4 modules_install
$ sudo make -j4 install
  1. 然后使用如下命令更新GRUB引导程序,并重启系统:
$ sudo update-grub
$ sudo reboot
  1. 计算机重启时候,连续按“Shift”键,直至出现如下图,选择“Ubuntu高级选项”后按一下“Enter”:
    在这里插入图片描述
  2. 选择红框处后,按一下“Enter”键:
    在这里插入图片描述
  3. 然后输入用户名和密码后,就可以进入系统了:
    在这里插入图片描述
  4. 重启系统后使用如下命令查看当前系统的Linux内核版本:
$ sudo uname -r
  1. 可以发现当前的Linux内核版本已经成功更改为5.5.0了:
    在这里插入图片描述

三、方法二(自动下载安装Linux内核并更换)

  1. 在此方法中,我们使用的Ubuntu系统版本为16.04.1 LTS(Desktop),我们首先使用如下命令查看Linux内核版本:
$ sudo uname -r
  1. 可以发现当前系统中的Linux内核版本为4.4.0-31-generic:
    在这里插入图片描述
  2. 然后使用如下命令查看当前的Ubuntu版本可以安装的内核版本:
$ sudo apt-cache search linux | grep linux-image
  1. 执行上面的命令会出现很多我们可以下载安装的Linux版本的内核,我们选择4.11.0-13-generic版本的Linux内核下载安装:
    在这里插入图片描述
  2. 执行如下命令即可下载安装版本的内核,对于其他版本的Linux内核的下载安装只需要将下面两条命令中的版本号进行对应的替换即可:
$ sudo apt-get install linux-image-4.8.0-58-generic
$ sudo apt-get install linux-headers-4.8.0-58-generic
  1. 安装完成后,执行如下命令重启系统:
$ reboot
  1. 系统重启时,一直按“Esc”键,直到出现如下界面,选择红框处按一下“Enter”:
    在这里插入图片描述
  2. 然后会出现如下界面,选择红框处按一下“Enter”:
    在这里插入图片描述
  3. 然后输入用户名和密码进入系统:
    在这里插入图片描述
  4. 进入系统后,使用如下命令查看当前系统中的Linux内核的版本:
$ sudo uname -r
  1. 可以发现,当前系统中的Linux内核的版本已经成功更新为4.11.0-13-generic了:
    在这里插入图片描述

四、最后总结

  以上就是本篇博客的全部内容,我一共介绍了两种方法来更换Ubuntu系统的Linux的内核版本,每一种方法都介绍的非常仔细,各位读者按照我介绍的过程一定可以成功更换Ubuntu系统的Linux的内核版本。这篇博客到这里就结束了,我们下篇博客见!

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

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

相关文章

索引下推及具体实践

什么是索引下推 索引下推(Index Condition Pushdown,简称ICP),是MySQL5.6版本的新特性,它能减少回表查询次数,提高查询效率。 索引下推优化的原理 我们先简单了解一下MySQL大概的架构: MySQL服务层负责SQL语法解析…

Spring 中 @Primary 注解的原理是什么?

1. 问题分析 当我们使用 Spring 的时候,有时候会遇到下面这种情况。 假设我有 A、B 两个类,在 A 中注入 B,如下: Component public class A {AutowiredB b; }至于 B,则在配置类中存在多个实例: Configu…

windows上先简单使用libevent,运行demo

使用libevent 1:获取libevent库。 从libevent 官网中获取,这里获取到的版本是libevent-2.1.12-stable.tar 2:windows上编译libevent库(VS2019上使用) 2.1:cmake准备 注:这里要用cmake进行编译,除此之外…

变动的Python爬虫实现

在电商时代,了解商品价格的变动对于购物者和卖家来说都非常重要。本文将分享一种基于Python的实时监控电商平台商品价格变动的爬虫实现方法。通过本文的解决方案和代码示例,您将能够轻松监控商品价格,并及时做出决策。 一、了解需求和目标 在…

HyperMotion高度自动化云迁移至华为HCS8.1解决方案

项目背景 2020 年以来,金融证券已经成为信创落地最快的领域。2021 年证监会发布的《证券期货业科技发展十四五规划》中,将“加强信创规划与实施”作为证券行业重点建设任务之一。为了符合国家信创标准,某证券企业计划将网管系统、呼叫中心管…

操作系统——Linux基本命令

文章目录 1.目录切换命令2. 目录的操作命令(增删改查)3. 文件的操作命令(增删改查)4. 压缩文件的操作命令5. Linux 的权限命令6. Linux 用户管理7. Linux 系统用户组的管理8. 其他常用命令 Linux 命令大全:http://man.linuxde.net/ 1.目录切换命令 cd usr&#xf…

《TCP IP网络编程》第十七章

第 17 章 优于 select 的 epoll 17.1 epoll 理解及应用 select 复用方法由来已久,因此,利用该技术后,无论如何优化程序性能也无法同时介入上百个客户端。这种 select 方式并不适合以 web 服务器端开发为主流的现代开发环境,所以需…

RCNA——静态路由配置

静态路由的一堆特点就不多说了,之前文章有提到过。 一,实验背景 公司扔给你几台路由器,并和你说,我们公司需要一条通往公司外的网络,你帮忙配置一下。这类网络很显然要利用VPN等技术,奈何公司穷的一批&…

[语音识别] 基于Python构建简易的音频录制与语音识别应用

语音识别技术的快速发展为实现更多智能化应用提供了无限可能。本文旨在介绍一个基于Python实现的简易音频录制与语音识别应用。文章简要介绍相关技术的应用,重点放在音频录制方面,而语音识别则关注于调用相关的语音识别库。本文将首先概述一些音频基础概…

【Rust】Rust学习 第十六章Rust 的面向对象特性

面向对象编程(Object-Oriented Programming,OOP)是一种模式化编程方式。对象(Object)来源于 20 世纪 60 年代的 Simula 编程语言。这些对象影响了 Alan Kay 的编程架构中对象之间的消息传递。他在 1967 年创造了 面向对…

【Unity3D】程序纹理简单应用

1 几何纹理应用 1.1 边框 1)边框子图 Border.shadersubgraph 说明:Any 节点用于判断输入向量中是否存在一个分量非零,Branch 节点根据输入的真假走不同的分支,详见→Shader Graph节点。 2)圆环 Ring.shadergraph 说明…

Web 拦截器-interceptor

拦截器是一种动态拦截方法调用的机制,类似于过滤器,是Spring框架提出的,用来动态拦截控制器方法的执行。 其作用是拦截请求,在指定方法调用前后,根据业务执行预设代码。 实现步骤 1.定义拦截器,实现Handl…

欧拉计划44题

Pentagon numbers Pentagonal numbers are generated by the formula, . The first ten pentagonal numbers are: 1,5,12,22,35,51,70,92,117,145,… It can be seen that . However, their difference, 70−2248, is not pentagonal. Find the pair of pentagonal numbers, a…

室颤(VF)检测的算法 TCSC

室颤检测检测算法很多,最早关注的是TCI 算法。看看原始论文的 TCI 参数分布图: 分布图上显示,VFVT 和 NSR 分离特性很好。但是这有一个前提,和选择的数据集有很大关系。 在看看下面一篇论文: A simple time domain al…

Java-图书登录系统的实现

实现效果 它将面对 管理员 和 普通用户 两种用户来提供服务,并且各自的服务并不相同。 实现思路 一般写项目,每个独立的功能都会写成一个类,而有关联的功能,都会将多个类存放在一个包中,此项目我们将用 3 个包来体现我…

023:vue中解决el-date-picker更改样式不生效问题

第023个 查看专栏目录: VUE ------ element UI 本文章目录 修改后的效果示例源代码(共52行)核心内容步骤:(1)更改样式(2)添加参数 专栏目标 在vue项目开发中,我们打算保持颜色的一致…

辅助笔记-安装CentOS8.1虚拟机

安装CentOS8.1虚拟机 文章目录 安装CentOS8.1虚拟机1. CentOS8.1的安装1.1 下载CentOS8.1镜像1.2 检查BIOS虚拟化支持1.3 新建虚拟机1.4 安装系统1.5 测试上网和终端 2. CentOS8.0和CentOS7.0的区别(了解) 本文主要参考B站视频“P116_ 韩顺平Linux_cntos8安装和介绍”。 本文目…

小红书kol投放怎么做,kol投放工作规划!

作为分享类平台,小红书有着众多的kol类型。但是该如何合理的使用这些达人,达到品牌传播的目的,就需要一份详尽的计划。今天就跟大家分享一下,小红书kol投放怎么做,kol投放工作规划! 什么是kol投放 kol投放即…

迈向未来的大门:人脸识别技术的突破与应用

迈向未来的大门:人脸识别技术的突破与应用 人脸识别:人脸识别的工作流程人脸识别的作用人脸识别技术的突破与应用 在深度学习人脸识别之前我们要先知道人脸识别是什么。 人脸识别: 人脸识别是一种基于人脸图像或视频进行身份验证或识别的技术…

近实时智能应答 2D 数字人搭建

背景 早在大语言模型如 GPT-3.5 等的兴起和被日渐广泛地采用之前,教育行业已经在 AI 辅助教学领域有过各种各样的尝试。在教育行业,人工智能技术的采用帮助教育行业更好地实现教学目标、提高教学质量、提高学习效率、提高学习体验、提高学习成果。例如&a…