Ubuntu升级/修改内核模块详细教程

下载指定内核版本

下载路径 https://kernel.ubuntu.com/~kernel-ppa/mainline/

查看内核版本

1.ubuntu查看当前内核

sudo uname -r

在这里插入图片描述

修改内核步骤

下载.deb包并执行安装

下载deb包

在此网站上查找所需内核版本 Index of /~kernel-ppa/mainline,找到对应的所需要升级的版本,并下载对应的包,如图需要下载一下四个包【缺一不可】
下载对应内核版本的.deb
注意:cpu为64架构 选择amd64对应的安装包;

如下两个示例:
下载地址:https://kernel.ubuntu.com/~kernel-ppa/mainline/v4.19.286

在这里插入图片描述
在这里插入图片描述

下载完成后,新建一个文件夹,并将下载的4个包移至新建文件夹中(如图,我的少移了一个后面会出错!所以一个不能少)
在这里插入图片描述

安装
ls  #查看文件列表
cd /ubuntu-kernel-upgrade(上一步中新建的文件夹名字)  #cd 命令进入存放内核包.deb的文件夹中
#然后执行以下命令进行安装
sudo dpkg -i *.deb
#以管理员身份运行 软件包管理器 安装 所有deb软件包; sudo以管理员身份运行;dpkg软件包管理器; -i安装; *.deb所有软件包
报错解决方案

如图出现问题:可以知道缺失了下面两个包
依赖于libssl1.1(>=1.1.0)
依赖于linux-base(>=4.5ubuntu1-16.04.1)

在这里插入图片描述

一位宝藏博主分享的宝藏网站: https://pkgs.org/ 可以查找下载很多Linux的包;
下载好以上两个缺失的包后,依旧是新建一个文件夹,将其放进文件夹中,并执行安装命令

#进入存放上面两个包的文件夹中
cd ubuntu_deb  #ubuntu_deb是新建的文件夹名字) 
 
#然后执行以下命令进行安装
sudo dpkg -i *.deb  
#以管理员身份运行 软件包管理器 安装 所有deb软件包; sudo以管理员身份运行;dpkg软件包管理器; -i安装; *.deb所有软件包

安装完成,再次用命令安装内核的软件包即可;

安装完成

安装完成后,查看所安装的所有内核版本

root@IPSecVPN:~/ubuntu-kernel-upgrade# dpkg --get-selections | grep linux-
binutils-x86-64-linux-gnu                       install
linux-base                                      install
linux-firmware                                  install
linux-generic                                   hold
linux-headers-4.15.0-55                         install
linux-headers-4.15.0-55-generic                 install
linux-headers-4.15.0-64                         install
linux-headers-4.15.0-64-generic                 install
linux-headers-4.19.286-0419286                  install
linux-headers-4.19.286-0419286-generic          install
linux-headers-generic                           hold
linux-image-4.15.0-55-generic                   install
linux-image-4.15.0-64-generic                   install
linux-image-generic                             hold
linux-image-unsigned-4.19.286-0419286-generic   install
linux-libc-dev:amd64                            install
linux-modules-4.15.0-55-generic                 install
linux-modules-4.15.0-64-generic                 install
linux-modules-4.19.286-0419286-generic          install
linux-modules-extra-4.15.0-55-generic           install
linux-modules-extra-4.15.0-64-generic           install
linux-tools-4.15.0-212                          install
linux-tools-4.15.0-212-generic                  install
linux-tools-4.15.0-64                           install
linux-tools-4.15.0-64-generic                   install
linux-tools-common                              install
linux-tools-generic                             install
切换内核脚本

需要根据上边流出来的内核版本进行切换【必须一一对应】

root@IPSecVPN:~/ubuntu-kernel-upgrade# cat upgrade-kernel-version.sh 
#!/bin/bash

set -e

sed -i "s/GRUB_DEFAULT=.*/GRUB_DEFAULT=\"Advanced options for Ubuntu>Ubuntu, with Linux 4.19.286-0419286-generic\"/g" /etc/default/grub
sed -i "s/APT::Periodic::Update-Package-Lists.*/APT::Periodic::Update-Package-Lists \"0\";/g" /etc/apt/apt.conf.d/10periodic
sudo apt-mark hold linux-image-unsigned-4.19.286-0419286-generic
apt-mark hold linux-headers-4.19.286-0419286 >> /dev/null 2>&1 || :
update-grub
#reboot

重启后,使用 uname -r 可以查看内核版本已经更新

切换内核详解

更改内核版本:将GRUB_DEFAULT从0修改为:Advanced options for Ubuntu>Ubuntu, with Linux 4.15.0-64-generic

root@gt110:~# cat /etc/default/grub
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
#   info -f grub -n 'Simple configuration'

#GRUB_DEFAULT=0
GRUB_DEFAULT='Advanced options for Ubuntu>Ubuntu, with Linux 4.15.0-64-generic'
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="maybe-ubiquity"
GRUB_CMDLINE_LINUX=""

# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console

# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
#GRUB_GFXMODE=640x480

# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true

# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"

# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
更新内核
update-grub
禁止自动更新
sudo apt-mark hold linux-image-4.15.0-64-generic
sudo apt-mark hold linux-headers-4.15.0-64
vim /etc/apt/apt.conf.d/10periodic

# 将“1”改为“0”,保存即可。

APT::Periodic::Update-Package-Lists "0";
APT::Periodic::Download-Upgradeable-Packages "0";
APT::Periodic::AutocleanInterval "0";
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值