Ubuntu22.04系统切换内核版本

Ubuntu系统切换内核版本

  • [1 更换镜像源](#1 更换镜像源)
  • [2 查询可更换的内核版本](#2 查询可更换的内核版本)
  • [3 安装合适版本内核](#3 安装合适版本内核)
  • [4 切换内核版本](#4 切换内核版本)
  • [5 验证内核是否更换成功](#5 验证内核是否更换成功)

1 更换镜像源

使用鱼香ROS脚本来更换镜像源

复制代码
wget http://fishros.com/install -O fishros && . fishros

2 查询可更换的内核版本

复制代码
sudo apt update
sudo apt search linux-image

3 安装合适版本内核

此处选择linux-image-6.2.0-37-generic

复制代码
# 内核镜像
sudo apt install linux-image-6.2.0-37-generic
# 内核头文件
sudo apt install linux-headers-6.2.0-37-generic
# 内核模块
sudo apt install linux-modules-6.2.0-37-generic
# 内核额外模块
sudo apt install linux-modules-extra-6.2.0-37-generic

查看是否安装成功

复制代码
dpkg -l | grep linux-image      

4 切换内核版本

查看内核版本的顺序

复制代码
gedit /boot/grub/grub.cfg

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
	recordfail
	load_video
	gfxmode $linux_gfx_mode
	insmod gzio
	if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
	insmod part_gpt
	insmod ext2
	set root='hd0,gpt3'
	if [ x$feature_platform_search_hint = xy ]; then
	  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
	else
	  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
	fi
	linux	/boot/vmlinuz-6.8.0-51-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro  quiet splash $vt_handoff
	initrd	/boot/initrd.img-6.8.0-51-generic
}
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
	menuentry 'Ubuntu, with Linux 6.8.0-51-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.8.0-51-generic-advanced-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		gfxmode $linux_gfx_mode
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.8.0-51-generic ...'
		linux	/boot/vmlinuz-6.8.0-51-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro  quiet splash $vt_handoff
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.8.0-51-generic
	}
	menuentry 'Ubuntu, with Linux 6.8.0-51-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.8.0-51-generic-recovery-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.8.0-51-generic ...'
		linux	/boot/vmlinuz-6.8.0-51-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro recovery nomodeset dis_ucode_ldr 
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.8.0-51-generic
	}
	menuentry 'Ubuntu, with Linux 6.2.0-37-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.2.0-37-generic-advanced-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		gfxmode $linux_gfx_mode
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.2.0-37-generic ...'
		linux	/boot/vmlinuz-6.2.0-37-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro  quiet splash $vt_handoff
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.2.0-37-generic
	}
	menuentry 'Ubuntu, with Linux 6.2.0-37-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.2.0-37-generic-recovery-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.2.0-37-generic ...'
		linux	/boot/vmlinuz-6.2.0-37-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro recovery nomodeset dis_ucode_ldr 
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.2.0-37-generic
	}
	menuentry 'Ubuntu, with Linux 6.2.0-26-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.2.0-26-generic-advanced-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		gfxmode $linux_gfx_mode
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.2.0-26-generic ...'
		linux	/boot/vmlinuz-6.2.0-26-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro  quiet splash $vt_handoff
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.2.0-26-generic
	}
	menuentry 'Ubuntu, with Linux 6.2.0-26-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-6.2.0-26-generic-recovery-03c538ec-639b-49ff-b89a-ed6c2ddb6a73' {
		recordfail
		load_video
		insmod gzio
		if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt3'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt3 --hint-efi=hd0,gpt3 --hint-baremetal=ahci0,gpt3  03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		else
		  search --no-floppy --fs-uuid --set=root 03c538ec-639b-49ff-b89a-ed6c2ddb6a73
		fi
		echo	'Loading Linux 6.2.0-26-generic ...'
		linux	/boot/vmlinuz-6.2.0-26-generic root=UUID=03c538ec-639b-49ff-b89a-ed6c2ddb6a73 ro recovery nomodeset dis_ucode_ldr 
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initrd.img-6.2.0-26-generic
	}
}

可总结如下,所要切换的Ubuntu, with Linux 6.2.0-37-generic"1 > 2"

复制代码
0   Ubuntu          
1   Ubuntu 高级选项  
	   1>0  Ubuntu, with Linux 6.8.0-51-generic
	   1>1	Ubuntu, with Linux 6.8.0-51-generic (recovery mode)
   	   1>2	Ubuntu, with Linux 6.2.0-37-generic
	   1>3  Ubuntu, with Linux 6.2.0-37-generic (recovery mode)
       1>4	Ubuntu, with Linux 6.2.0-26-generic
   	   1>5	Ubuntu, with Linux 6.2.0-26-generic (recovery moe)

更改grub默认启动项

复制代码
sudo gedit /etc/default/grub

更新开启引导文件

复制代码
sudo update-grub

重启

复制代码
reboot

5 验证内核是否更换成功

复制代码
uanme -r
相关推荐
cn_lyg4 分钟前
Linux的入门级常用操作命令
linux·运维·服务器
就叫飞六吧38 分钟前
TOML vs YAML:为什么 Cargo 选择 TOML?
linux·运维·服务器
IMPYLH1 小时前
Linux 的 test 命令
linux·运维·服务器·chrome·bash
xrui581 小时前
2026实战:深度解析 Gemini 3.1 镜像站函数调用在自动化运维工单中的应用
linux·服务器·网络
HackTwoHub2 小时前
Linux 内核史诗级本地提权 全网深度复现、原理完整分析( CVE-2026-31431)
linux·运维·安全·web安全·网络安全·代码审计·安全架构
她说彩礼65万2 小时前
C语言 文件
linux·服务器·c语言
txg6662 小时前
自动驾驶领域热点简报(2026-04-26 ~ 2026-05-03)
linux·人工智能·自动驾驶
二哈赛车手2 小时前
新人笔记---ES和kibana启动问题以及一些常用的linux的错误排查方法,以及ES,数据库泄密解决方案[超详细]
java·linux·数据库·spring boot·笔记·elasticsearch
嵌入式×边缘AI:打怪升级日志3 小时前
嵌入式Linux开发核心自测题(全系列精华浓缩)
java·linux·运维
嵌入式×边缘AI:打怪升级日志3 小时前
TinaSDK Linux Kernel 基本使用(全志T113开发板)
linux·运维·服务器