我最近用 Debian Wheezy 双启动了一台 Windows PC。安装顺利,没有错误,但是当我启动到 Debian 时,我立即受到 GRUB 救援的欢迎:
Welcome to GRUB!
error: unknown filesystem.
Entering rescue mode...
在使用set
命令进一步检查后,我注意到它正在引导到错误的分区:
grub rescue> set
prefix=(hd0,gpt4)/boot/grub
root=hd0,gpt4
这里它指向(hd0,gpt4)
Debian 的安装位置是(hd0,gpt5)
. 所以,我做了一个快速修复,使用set
将变量改回它们应该是什么:
grub rescue> set prefix=(hd0,gpt5)/boot/grub
grub rescue> set root=gd0,gpt5
在这样做之后,我只做了我记得我应该做的事情来引导到操作系统并运行:
grub rescue> insmod normal
当我收到错误时,这就是事情开始出错的地方:
error: invalid arch independent ELF magic.
然后我对这个问题进行了一些研究,似乎常见的解决方案是从 live CD 重新安装 GRUB。因此,我启动到 Debian 的 live CD 并运行以下命令:
sudo mount /dev/sda5 /mnt
sudo grub-install --root-directory=/mnt /dev/sda
我收到错误的地方:
The file /mnt/boot/grub/stage1 not read correctly.
虽然我可以保证这个文件确实存在并且是可编辑的,因为我可以编辑它
sudo nano /mnt/boot/grub/stage1
那么可能是什么问题呢?