目录
- 1 问题背景
- 2 问题探索
- 3 问题解决
- 4 告别Bug
1 问题背景
环境:
- Win10
- Ubuntu20.04
现象:双系统电脑向移动硬盘安装Ubuntu系统后,重启黑屏并显示
Minimal BASH-like line editing is supported. For the first word, TAB lists possible command completions. Anywhere else TAB lists possible device or file completions.
2 问题探索
开机时(出现电脑商标之前)按F2
键进入boot setup
界面,通过方向键选定选择Windows Boot Manager,进入Windows系统。
建议:重新通过DiskGenius
筛查漏掉的ubuntu启动文件,若未果,继续尝试下面的方法。
打开【磁盘管理】确认磁盘分区形式,本文为GPT
对于GPT
格式,下载EasyUEFI,打开软件,选择【管理EFI启动项】,删除Ubuntu,重启电脑。
但是,如果我们就是希望保留当前ubuntu系统而非删了它,那要如何修复呢?
首先,我们要确保ubuntu启动文件存在,通过DiskGenius
筛查grub.cfg
文件如下所示,保证文件存在后重启电脑进入报错界面
在界面输入
ls
此时会列出硬盘分区
接着对每一个分区定位grub.cfg
ls (hdX,Y)/boot/grub
如果出现unknown file
等信息则表示该不是,换下一个分区,直到输出成功定位的信息,假设grub.cfg
位于(hd1,gpt7)中,临时修复grub
set root=(hd1,gpt7)
set prefix=(hd1,gpt7)/boot/grub
insmod normal
normal
接着可以正常进入Ubuntu系统,在此基础上进行下一步修复。
进入Ubuntu系统后,首先检查启动分区的设备号,输入
sudo fdisk -l
我的分区情况如上,这里有两个启动分区,其中260M的是windows文件,500M的是Ubuntu文件。此时我们选择修复Ubuntu系统,记下设备号/dev/nvme0n1p7
,执行修复程序
sudo grub-install /dev/XXXX
sudo update-grub
这里XXXX
要根据自己的情况改,在这里/dev/XXXX
等价于/dev/nvme0n1p7
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.11.0-27-generic
Found initrd image: /boot/initrd.img-5.11.0-27-generic
Found Windows Boot Manager on /dev/nvme0n1p1@/EFI/Microsoft/Boot/bootmgfw.efi
Found Windows Boot Manager on /dev/nvme1n1p1@/efi/Microsoft/Boot/bootmgfw.efi
Adding boot menu entry for UEFI Firmware Settings
done
修复完成后重启即可
所以本质上,这个问题的原因是系统无法自动定位启动文件
3 问题解决
总结一下修复的流程
- 通过
ls
定位grub.cfg
并临时进入Ubuntu系统 - 查看Ubuntu系统启动文件所在分区的设备号
- grub安装该分区并更新
- 重启电脑
4 告别Bug
本文收录于《告别Bug》专栏,该专栏记录人工智能领域中各类Bug以备复查,文章形式为:问题背景 + 问题探索 + 问题解决,订阅专栏+关注博主后可通过下方名片联系我进入AI技术交流群帮忙解决问题
🔥 更多精彩专栏:
- 《ROS从入门到精通》
- 《Pytorch深度学习实战》
- 《机器学习强基计划》
- 《运动规划实战精讲》
- …