温馨提示×

debian如何替换默认内核

小樊
51
2026-09-01 23:34:41
栏目: 智能运维

在 Debian 中“替换默认内核”通常有两种含义,下面分别说明,并给出常用做法。


一、安装新内核并设为默认启动内核(GRUB 方式,最常见)

1. 查看当前已安装内核

dpkg -l | grep linux-image
# 或
ls /boot/vmlinuz-*

2. 安装新的内核

例如安装官方仓库中的某个版本:

sudo apt update
sudo apt install linux-image-6.1.0-xx-amd64

如果是自己编译或第三方内核,也会生成 linux-image-* 包。

3. 查看 GRUB 启动项顺序

grep '^menuentry' /boot/grub/grub.cfg

或(UEFI 常见):

grep '^menuentry' /boot/grub/grub.cfg | nl

4. 设置默认启动内核

编辑 GRUB 配置:

sudo nano /etc/default/grub

修改或添加:

GRUB_DEFAULT=0
  • 0 表示第一个菜单项
  • 也可以用子菜单形式,例如:
GRUB_DEFAULT="Advanced options for Debian>Debian GNU/Linux, with Linux 6.1.0-xx-amd64"

5. 更新 GRUB

sudo update-grub

6. 重启

sudo reboot

确认:

uname -r

二、完全“替换”旧内核(卸载旧内核)

⚠️ 至少保留一个可用内核

1. 卸载旧内核

sudo apt remove linux-image-5.10.0-xx-amd64
sudo apt autoremove

2. 确认默认内核

卸载后 GRUB 通常会自动把新内核设为默认。


三、使用 grub-set-default(持久设置)

sudo grub-set-default "Debian GNU/Linux, with Linux 6.1.0-xx-amd64"
sudo update-grub

查看当前默认:

grub-editenv list

四、UEFI + systemd-boot(较少见)

如果你使用的是 systemd-boot 而非 GRUB:

bootctl list
sudo bootctl set-default xxx.conf

五、常见问题

  • 修改后无效:确认执行了 update-grub
  • 服务器无显示:可用 grub-reboot 临时指定一次启动
  • 云服务器:部分厂商有独立控制台内核管理

如果你能说明:

  • Debian 版本(cat /etc/debian_version
  • 是想升级内核回滚内核还是彻底删除旧内核

我可以给你更精确的步骤。

0