在Ubuntu升级+启动修复后启动Windows时出现“磁盘读取错误”

我刚刚升级到12.10。 安装文件并重新启动后,我遇到了以下问题:

error file not found grub rescue> _ 

通过使用引导修复工具修复引导可以轻松解决此问题。 这个答案对我有帮助。

但在此之后,Windows将无法启动。 它给出了以下错误:

 A disk read error has occurred Press Ctrl+Alt+Del to restart 

屏幕截图显示有关磁盘读取错误的消

我该如何解决?

我遇到了同样的问题,我通过站在Windows 7加载器驱动器上并按E进行编辑来修复它。

我的insmod设置为ldmset root设置为/ldm/(lotofhexnumbers)/volume1

所以我编辑这两行并按Ctrl + X这将启动,但不会保存,这只是为了测试。

 insmod part_msdos set root='(hd0,msdos1)' 

如果它适用于您,请重新启动到Ubuntu sudo gedit /boot/grub/grub.cfg

查找menuentry您的启动配置文件的名称,编辑下面的行并保存,重新启动并选择Windows将正常启动。

 insmod part_msdos set root='(hd0,msdos1)' 
  1. 通过Windows磁盘修复Windows: https : //help.ubuntu.com/community/RestoreUbuntu/XP/Vista/7Bootloader ,直到您可以直接访问Windows。
  2. 然后使用Boot-Repair恢复GRUB菜单

运行启动修复工具不仅仅是修复grub。 看起来它破坏了你的Windows启动配置。 如果你运行Windows 7安装盘上的“启动修复”程序,那应该修复你的Windows启动,但可能会再次覆盖grub。

要解决此问题,请尝试执行以下步骤:

从Live CD启动。

打开一个终端,找出你的Ubuntu安装分区:

 sudo fdisk -l 

挂载分区:

 sudo mount /dev/sdaX /mnt # sdaX is the partition that has Ubuntu 

绑定其他一些必要的东西:

 for i in /sys /proc /run /dev; do sudo mount --bind "$i" "/mnt$i"; done 

chroot到你的Ubuntu安装:

 sudo chroot /mnt 

此时,您正在安装,而不是Live CD,并以root用户身份运行。 更新grub:

 update-grub grub-install /dev/sda update-grub 

如果一切顺利,那么你就完成了:

 exit sudo reboot 

此时,您应该能够选择要在启动时启动的操作系统。

它是启动具有多个操作系统的机器的常见问题! 如果你确定你的硬件是完全健康的..(我的意思是你的硬盘线已正确连接,同时驱动器上没有坏扇区)虽然很少见,但你可以通过这些步骤

我建议你先阅读这个答案

接下来,我个人更喜欢使用Poppy Linux来恢复任何带有损坏的bootloader的系统。因为这是一个很好的functionGrub安装程序,可以识别Windows和Linux分区或Bootloader。但你可以使用任何其他工具,如“grub启动盘”本身。但是请记住,Windows环境不是一个很好的选择你的启动。

然后尝试使用相关工具或可启动紧急磁盘修复MBR。

如果grub正确安装在引导扇区上,配置的最佳选项是你自己动手编辑/boot/grub/grub.cfg做一些搜索grub配置。

当您在启动时处于Grub菜单中时,突出显示Windows 7加载程序选项,按E进行编辑并进行替换

 insmod ldm 

 insmod part_msdos 

然后按Ctrl + X.

如果有效,可以通过以下步骤使其永久化:启动回Ubuntu,打开终端,键入sudo gedit /boot/grub/grub.cfg并按Enter键 。 现在按Ctrl + F并搜索Windows,您将看到与编辑Grub选项时看到的行类似的行。 替换上面的代码并保存它以使其永久化。

当Ubuntu 13.10安装破坏我的Windows 7加载程序时,这对我有用。