我最近将我的 Windows 7 更新到了 10,并在更新过程中破坏了 grub。我在实时 CD 上运行了 Boot-Repair,并设法恢复了 Windows 分区。但是 grub 仍然无法启动。
我收到的启动修复网址是http://paste.ubuntu.com/12189762/。
编辑:
Oldfred 帮我解决了这个问题。我不太明白分区是如何工作的。扩展分区环绕着 Linux 和交换分区,但出于某种原因,Linux 分区没有显示出来。我启动到一个活动磁盘并运行 parted rescue:
sudo parted /dev/sda unit s print //this printed the current partition table
sudo parted
unit s
rescue
Start? //Here I entered in 1 sector after the extended partition
End? //Here I entered in 1 sector before the swap parition
之后我再次运行了 boot-repair,并能够将 grub 恢复到原位!现在一切都运行良好。希望这篇文章能帮助别人!
答案1
缺少的不是 grub,而是您的 Linux 分区。
/dev/sda2 208,894 416,761,855 416,552,962 5 Extended
/dev/sda5 400,158,720 416,761,855 16,603,136 82 Linux
swap / Solaris
在扩展分区开始后的一个或两个扇区和 sda5 swap 开始前几个扇区处有一个缺失分区。它可能是 sda5,而 swap 是 sda6,但由于使用 UUID 进行引导并不重要。许多人使用 testdisk 或 parted rescue 并将 grub 重新安装到 MBR,系统就可以正常工作了。
在任何更改之前备份分区表,这样如果更改不正确,您可以恢复到当前状态
sudo sfdisk -d /dev/sda > PT_sda.txt
更多细节:
使用 parting rescue 恢复帖子 #22 中丢失的分区详细信息
http://ubuntuforums.org/showthread.php?t=1775331
http://www.gnu.org/software/parted/manual/html_node/rescue.html