Ubuntu 22.04.3 LTS 更新后无法启动问题求助
Ubuntu 22.04.3 LTS 更新后无法启动问题求助
Hey,别着急!这种更新后卡在$grub>提示符的问题在VPS上挺常见的,我给你几个简单易操作的解决步骤,哪怕你不是技术出身也能跟着做:
第一步:手动引导进入系统(当卡在$grub>时)
当你通过KVM看到$grub>提示符时,按以下步骤操作:
- 先输入
ls,回车后会列出所有磁盘分区,格式大概是(hd0,1)、(hd0,2)这类 - 逐个测试找到你的Ubuntu根分区:输入
ls (hd0,1)/boot,如果能看到以vmlinuz-和initrd.img-开头的文件,说明这个就是你的系统分区,记下来比如hd0,1 - 然后依次输入以下命令(把
hd0,1和5.15.0-91-generic换成你实际找到的分区和内核版本):
执行完set root=(hd0,1) linux /boot/vmlinuz-5.15.0-91-generic root=/dev/sda1 ro initrd /boot/initrd.img-5.15.0-91-generic bootboot后,系统应该就能正常启动到更新后的内核了
第二步:修复Grub引导(系统启动后)
成功进入系统后,我们需要修复Grub,避免下次重启再卡住:
- 打开终端,先更新软件包索引:
sudo apt update - 安装Grub到主引导记录(VPS一般都是
/dev/sda,如果不确定可以用lsblk命令查看带*标记的磁盘):sudo grub-install /dev/sda - 最后更新Grub配置:
sudo update-grub
第三步:处理更新时的警告问题
你提到的两个警告也可以顺便处理掉:
- 关于“Newer kernel available”警告:修复Grub后,下次重启系统会自动加载新内核,这个警告就不会再出现了
- 关于os-prober的警告:如果你的VPS只装了Ubuntu一个系统,可以禁用os-prober来避免这个提示:
- 打开Grub配置文件:
sudo nano /etc/default/grub - 找到
GRUB_DISABLE_OS_PROBER=false这一行,改成GRUB_DISABLE_OS_PROBER=true - 按
Ctrl+O保存,Ctrl+X退出编辑器 - 再次更新Grub配置:
sudo update-grub
- 打开Grub配置文件:
后续更新的小建议
- 下次更新系统时,建议使用
sudo apt full-upgrade命令,它会更完整地处理内核和依赖包的更新,比普通的upgrade更稳妥 - 更新完成后,手动执行
sudo reboot重启系统,不要依赖自动重启(VPS的自动重启有时候会出问题)
备注:内容来源于stack exchange,提问作者Hawk007
相关产品推荐
相关产品推荐

