在 Debian 系统中,如果你升级内核后想恢复到旧内核,通常不需要重装系统,只要旧内核还在,就可以通过 GRUB 引导菜单 或 重新设置默认内核 来恢复。下面按常见场景说明。
先查看当前系统中是否还保留着旧内核:
dpkg --list | grep linux-image
或:
ls /boot/vmlinuz-*
如果你能看到类似:
linux-image-5.10.0-21-amd64
linux-image-5.10.0-23-amd64
说明旧内核还在。
sudo reboot
Shift(BIOS)Esc(UEFI)依次进入:
Advanced options for Debian GNU/Linux
选择 旧版本内核(不要选 recovery mode),回车启动。
✅ 如果系统能正常启动,说明旧内核可用。
grep -E 'menuentry|submenu' /boot/grub/grub.cfg
你会看到类似:
menuentry 'Debian GNU/Linux'
submenu 'Advanced options for Debian GNU/Linux'
menuentry 'Debian GNU/Linux, with Linux 5.10.0-21-amd64'
menuentry 'Debian GNU/Linux, with Linux 5.10.0-23-amd64'
记下你想恢复的 menuentry 的序号(从 0 开始)。
sudo nano /etc/default/grub
修改或添加:
GRUB_DEFAULT="1>2"
含义:
1 → Advanced options2 → 第 3 个内核(从 0 开始)sudo update-grub
sudo reboot
grub-set-default(适合熟悉 GRUB 的用户)sudo grub-reboot "1>2"
sudo reboot
先查看可用版本:
apt-cache search linux-image
安装指定版本(示例):
sudo apt install linux-image-5.10.0-21-amd64
sudo apt install linux-headers-5.10.0-21-amd64
然后按 第二部分 设置默认内核。
Debian 默认可能自动清理旧内核,可以锁定:
sudo apt-mark hold linux-image-5.10.0-21-amd64
sudo apt-mark hold linux-headers-5.10.0-21-amd64
取消锁定:
sudo apt-mark unhold linux-image-5.10.0-21-amd64
sudo update-initramfs -c -k 5.10.0-21-amd64
sudo update-grub
编辑:
sudo nano /etc/default/grub
设置:
GRUB_TIMEOUT=5
GRUB_TIMEOUT_STYLE=menu
然后:
sudo update-grub
# 查看内核
dpkg -l | grep linux-image
# 重启选择旧内核
reboot → Advanced options
# 设置默认
修改 /etc/default/grub → update-grub
如果你愿意,可以告诉我:
我可以给你精确到命令级别的恢复方案。