更换Ubuntu内核

Haixin Pang 三月 23, 2025 #CFG

下载内核deb

这里可以找到指定的内核版本,下载对应的deb包。 一般需要下载headerimage两个包。

我需要安装5.4.284-generic内核,需要下载四个包:

安装deb

sudo dpkg -i *.deb

修改grub配置

一般安装之后会默认作为启动内核,可以在开机时选择内核版本。 如果希望开机时自动选用某个内核,可以修改/etc/default/grub文件。

查看menuentry列表

首先运行一下命令

cat /boot/grub/grub.cfg | grep menuentry

可以得到类似以下输出

...

menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-26f8e534-308d-4ec1-81f1-1019aa47a25d' {
submenu 'Advanced options for Ubuntu' $menuentry_id_option 'gnulinux-advanced-26f8e534-308d-4ec1-81f1-1019aa47a25d' {
 menuentry 'Ubuntu, with Linux 5.4.284-0504284-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.284-0504284-generic-advanced-26f8e534-308d-4ec1-81f1-1019aa47a25d' {
 menuentry 'Ubuntu, with Linux 5.4.284-0504284-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-5.4.284-0504284-generic-recovery-26f8e534-308d-4ec1-81f1-1019aa47a25d' {
 menuentry 'Ubuntu, with Linux 4.15.0-156-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-156-generic-advanced-26f8e534-308d-4ec1-81f1-1019aa47a25d' {
 menuentry 'Ubuntu, with Linux 4.15.0-156-generic (recovery mode)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-4.15.0-156-generic-recovery-26f8e534-308d-4ec1-81f1-1019aa47a25d' {

第一个menuentry就是默认启动的内核,编号为0。第二个为Advanced options,编号为1。可以看到有四个内核可供选择。编号为1>01>11>21>3

修改grub配置

打开/etc/default/grub文件,找到GRUB_DEFAULT字段,修改为对应内核编号。如:

GRUB_DEFAULT="1>0"

以上表示默认启动第一个内核。

更新grub

执行以下命令

sudo update-grub

安装额外模块(可选,建议)

如果需要安装额外的内核模块,可以使用以下命令:

sudo apt install linux-modules-extra-$(uname -r)