我刚刚在设置 Ubuntu / Windows 7 / Windows XP 时遇到了一个奇怪的问题。
当我打开笔记本电脑时,Linux 引导加载程序出现,当我想使用 Ubuntu 时,我选择 Ubuntu,当我想使用 Windows 7 时,我选择选项“Windows 7(加载程序)/dev/sda1。
选择此选项将加载 Windows 引导程序,它提供两个选项:“Windows 7”和“Windows 早期版本”。然后我选择 Windows 7,一切按预期运行。
今天我正在用 Windows 7 处理一些事情,当我不在家的时候,我哥哥不小心拉下了我笔记本电脑的盖子。我及时拉起了盖子,结果看到黑屏,但电源按钮打开了。(我猜是 Windows 7 正在进入休眠状态)。
我尝试按键盘上的一些按钮,但什么也没发生。最后我长按电源按钮几分钟,关闭了笔记本电脑。然后我重新启动电脑,当我选择“Windows 7(加载程序)”时/dev/sda1进入 Linux 引导加载程序后,计算机重新启动并再次显示 Linux 引导加载程序。我重复了同样的操作,但没有任何变化。
我已经从我的 Ubuntu 安装中运行了启动修复(我可以启动到 Ubuntu!)但没有尝试推荐的修复选项(因为我相信问题与 Windows 启动加载程序有关,而不是与 Linux 启动加载程序有关)。相反,我创建了启动信息摘要。
我已经尝试过以下事情:
运行以下命令更新 GRUB
sudo update-grub2
在 Linux 恢复模式下启动并选择“grub”
删除
hiberfil.sys
Windows 7分区上的文件
请帮我解决这个问题。非常感谢。
答案1
无论是什么原因导致了这种情况...重新安装引导加载程序应该可以解决问题。
首先重新安装 Windows 引导加载程序 - 从 Windows 7 安装介质启动,然后在“立即安装”屏幕上选择修复你的计算机, 选择命令提示符并执行以下命令:
bootrec.exe /fixmbr
bootrec.exe /fixboot
bootrec.exe /rebuildbcd
然后重新安装 GRUB 引导加载程序- 从 Ubuntu 安装媒体启动并选择无需安装即可试用 Ubuntu。进入 Ubuntu Live 桌面后,执行以下命令:
sudo mount /dev/sda9 /mnt
sudo grub-install --boot-directory=/mnt/boot /dev/sda
sudo update-grub
注意:sda
= 磁盘 | sda9
= 系统分区(信息取自提供的屏幕截图)
现在从所有 Windows 分区中删除该hiberfil.sys
文件,然后重新启动计算机。
更新解决您关于 GRUB 未成功更新的评论
在 Ubuntu Live 桌面(安装介质)上 chroot 进入已安装的系统:
sudo mount /dev/sda9 /mnt
sudo chroot /mnt
update-grub
exit
如果仍然收到错误,可以选择执行以下命令:
sudo mount /dev/sda9 /mnt
for i in /dev /dev/pts /proc /sys /run; do sudo mount -B $i /mnt$i; done
sudo chroot /mnt
update-grub
exit
更新内容,解决您仍然无法成功启动 Windows 的评论
重复步骤 1(重新安装 Windows 引导加载程序),如果它正确启动到 Windows 系统,请搜索问题并从中解决问题。如果 Windows 操作系统无法成功启动,请从 Windows 安装媒体启动...尝试使用修复选项解决问题。如果此尝试也失败,您很遗憾必须重新安装 Windows 系统。