我今天在安装 Windows 10 的同时安装了 Linux mint。设置是这样的:
- 第一个驱动器 SSD:Windows 10 (MBR)
- 第二个驱动器:一些数据(MBR)
- 第三驱动器:更多数据(MBR)
- 第 4 个驱动器:备份以前的驱动器和我安装 mint 的单独分区。(GPT,因为它是一个大驱动器)
引导不是 UEFI,而是标准引导(尽管 BIOS 允许 UEFI、Windows 和 Mint 以标准方式安装)。安装完美无缺,重新启动后,grub 出现了启动 Mint、memtest 和 Windows 10 的选项,我继续启动到 Mint。执行系统更新,当它变得奇怪时。
重新启动后,我会使用以下消息进入 grub 救援 shell:
error: no such device: {UUID}
error: unknown filesystem
当我发出“ ls
”时,我只会得到
(hd0)
我再次重新启动到 Live USB,检查 UUID 没有更改或其他什么,但一切似乎都很好。我安装了根分区,检查了 grub.cfg 并且存在“ insmod part_gpt
”,所以它应该加载 gpt 模块。
我已经重新启动,grub 又出现了。
现在,这里变得更奇怪了!一旦我从 grub 启动任何操作系统,它就会正常启动,但是一旦我重新启动,我就会陷入与以前相同的错误,并且行为相同。让我恢复常规 grub 的唯一方法是启动 live usb 然后重新启动(实际上没有别的),它会提示我使用 Mint 和 Windows 以及 memtest 等安装 grub。尝试了几次,或者通过启动进入mint 或 windows,每当我重新启动时,我都会卡住,我必须执行提到的解决方法。
当我从 LIVE 重新启动后设法恢复我的 grub 时,我进入 grub 控制台并发出“ ls
”,我可以看到我所有的驱动器和分区。
(hd0) (hd1) (hd2) (hd3) (hd3,gpt3) (hd3,gpt2) (hd3,gpt1) (hd4)
(也许它显示更多,因为我仍然插入了闪存驱动器)。
我试图解决问题的步骤(没有收获):
grub-install /dev/sda
(因为它是第一个驱动器,猜测它需要引导加载程序的位置)来自 Live USB 结果:失败,因为它与“/cow”路径有问题(不记得确切的错误消息,我是凭记忆写的,我可以当我回家时添加如果需要)
grub-install /dev/sda
从 Mint 重新启动后从 Live USB 结果:成功安装,没有错误消息,update-grub
随后发出
grub-probe
,它告诉我启动已打开/dev/sdd
(因为从技术上讲,启动分区是),所以我尝试了“grub install /dev/sdd
”结果:错误消息它无法在没有黑名单的 GPT 分区上安装 grub,不推荐。
- 尝试将“
insmod part_gpt
”添加到 grub.cfg 文件的最顶部结果:没有。没变。
- 尝试将“
看起来您的某些磁盘并不总是以可靠的方式被检测到。这表明可能存在硬件或固件问题。
使用 Windows CrystalDiskInfo或 Linux
smartctl
命令检查磁盘的运行状况。例如,要检查磁盘/dev/sda
:如果您的所有磁盘都正常,请查看您的 BIOS 设置是否允许在启动过程中添加短暂的延迟,以便在 BIOS 尝试检测它们之前让您的磁盘有更多时间启动/重置。
这发生在我身上,和你一样,我很困惑它有时会起作用,但大多数时候都没有,直到我意识到它在我的 BIOS 上启用快速启动后才开始发生。
要解决此问题,请在引导/启动的 BIOS 设置中禁用快速引导。
如果仍然没有这样做,则意味着由于某种原因磁盘超时(坏磁盘或 BIOS 未等待),未检测到(外部驱动器缺少足够的 USB 电源)。
在超时的情况下,一些BIOS 有一个设置来指定 SATA 驱动器的类型,特别是它是否是 HDD/SSD 以及是否有启动时间。设置Type=HDD和spin-up=True应该告诉 BIOS 等待足够长的时间来检测它。