更新NVIDIA驱动后Ubuntu无法启动,提示无引导设备
更新NVIDIA驱动后Ubuntu无法启动,提示无引导设备
这种情况我之前帮朋友排查过好几次,大概率是驱动更新过程中意外干扰了GRUB引导的正常识别,或是分区表出现临时异常,别慌,咱们一步步来恢复:
先快速排除硬件层面的小问题:
要是台式机,关机断电后重新拔插硬盘的SATA线和电源线;笔记本的话,重启时按对应的按键(一般是F2、Del或ESC,看开机时的屏幕提示)进入BIOS,检查BIOS里是否能正常识别到你的系统硬盘。如果BIOS里都看不到硬盘,那得考虑硬件故障;如果能看到,那就是引导层面的问题,继续往下操作。用Ubuntu安装启动盘进入试用模式修复GRUB:
- 找个8G以上的U盘,在另一台正常电脑上制作和你当前系统版本一致的Ubuntu启动盘
- 把启动盘插回故障电脑,从U盘启动,选择「Try Ubuntu without installing」进入试用系统
- 打开终端(快捷键Ctrl+Alt+T),输入
sudo fdisk -l,找到你的Ubuntu系统分区(一般是标注为「Linux filesystem」的分区,比如/dev/sda2或/dev/nvme0n1p2,可以通过分区大小判断)
挂载系统分区并修复GRUB:
- 挂载找到的系统分区,比如分区是
/dev/sda2,就输入:sudo mount /dev/sda2 /mnt - 挂载系统运行必需的核心目录:
sudo mount --bind /dev /mnt/dev sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys - 切换到你的系统根环境:
sudo chroot /mnt - 重新安装GRUB到硬盘(注意这里是硬盘设备,不是分区,比如
/dev/sda,不要加数字后缀):sudo grub-install /dev/sda - 更新GRUB的配置文件:
sudo update-grub - 退出根环境并重启:
exit,然后输入sudo reboot,记得拔掉U盘,看看系统能不能正常启动
- 挂载找到的系统分区,比如分区是
如果GRUB修复后还是卡驱动问题,彻底卸载残留驱动再重装:
- 要是能进入系统的恢复模式(GRUB修复后,开机按Shift键进入GRUB菜单,选「Advanced options for Ubuntu」,再选「recovery mode」,最后选「root shell」)
- 彻底卸载所有NVIDIA相关驱动:
sudo apt purge nvidia-* - 清理残留依赖:
sudo apt autoremove && sudo apt autoclean - 重启后安装官方适配的稳定驱动:
sudo ubuntu-drivers autoinstall,这个命令会自动检测你的显卡并安装最合适的驱动版本,比手动下载更稳妥
小提醒:下次更新NVIDIA驱动前,建议先备份GRUB配置文件,输入sudo cp /etc/default/grub /etc/default/grub.bak就行,万一出问题能快速恢复配置。
备注:内容来源于stack exchange,提问作者Quentin Hobbs Q




