我安装的 Fedora 22 非常损坏。
一切都工作得非常好,直到我决定双启动 F22 和 Linux Mint MATE。我将 Fedora 安装在 SSD 上,并将 LM 安装在不同的硬盘上。一段时间后,我认为 Linux Mint 不适合我,所以我删除了所有 LM 分区(我知道我正确地删除了所有分区;它们位于单独的驱动器中),然后从引导中删除 LM 条目菜单(或者我是这么想的),我跑了grub2-mkconfig -o /boot/grub2/grub.cfg
。我重新启动系统,奇迹中的奇迹,我得到:error: no such device: XXXXXXXXX...
和grub-rescue>
提示。
理想情况下,这个问题本来会有帮助,但 Fedora 使用 LVM。
如何恢复正常的 grub 启动屏幕?或者,我怎样才能恢复我的 Fedora 安装?
谢谢!
注意:我很乐意发布命令输出,但我对此了解不够,不知道什么是有用的。
答案1
Linux Mint 的 GRUB 似乎仍安装在 MBR 中,但其/boot
分区已被删除。因此,grub-rescue
当 GRUB 无法从文件系统加载其 stage2 时,会出现提示。要尝试的事情(按顺序):
- Mint GRUB 可能位于 Mint 磁盘的 MBR 中,而旧的(Fedora)GRUB 仍位于 Fedora 磁盘的 MBR 中。要检查这一点,请进入 BIOS 启动菜单并尝试从 Fedora 所在的 SSD 启动(假设当前默认启动设备是 Mint HDD)。如果这有效,它应该会让你回到标准的 GRUB,希望已经选择了启动 Fedora 的选项。
如果不是这种情况,您应该尝试从
grub-rescue
Fedora 安装引导。然后你可以运行grub2-install
让Fedora GRUB再次启动。为此,您需要知道grub-rescue
Fedora 的位置/boot
(我假设它位于单独的分区上,因为这是 Fedora 的默认分区),然后引导至normal
.ls
根据提示尝试grub-rescue>
;它会给你一个设备列表,(hd0,msdos1)
诸如此类。您可以通过以下方式列出单个设备ls (hd0,msdos1)/
(注意尾部斜杠);您想要的是带有grub2
子目录和一堆initramfs
和vmlinuz
文件的目录。一旦找到正确的设备(形式
(hd<n>,msdos<m>)
或形式(hd<n>,gpt<m>)
),您就可以运行set prefix=(<device>)/grub2
和set root=(<device>)
。然后你可以:insmod normal normal insmod linux
此时,您应该返回到标准
grub>
提示符。这里您需要正常启动操作系统,这取决于您的设置。但是您可以运行cat (<device>)/grub2/grub.cfg
,这将为您提供 Fedora 正常运行的命令,并希望复制这些命令。先前的过程漫长、复杂并且敏感地取决于您的具体设置。如果失败,您可以从 LiveCD(最好是 Fedora)启动,然后
grub2-install
从那里运行。引用答案中的命令行是一个很好的起点。