修复损坏的 Windows 分区并使用 Linux 启动

修复损坏的 Windows 分区并使用 Linux 启动

事情是这样的:

  • 我的 Windows 分区没有足够的空间
  • 删除库存的“恢复”分区以腾出空间
  • 扩大 Win 分区
  • 软件搞乱了 Windows 启动
  • 进入 Ubuntu 修复该问题
  • 尝试使用以下方法修复 Win7 MBRms-sys -7
  • 同时升级至Natty
  • 刷新旧的 GRUB,并在此过程中放入新的
  • grub-mkconfig未检测到 Windows
  • 制作 Windows 启动项
  • 尝试启动 Windows
  • 收到错误“无效的分区表”

现在我没有任何操作系统 CD/DVD(Windows、Linux),所以我必须使用我已有的东西。

这是我的启动信息脚本

我的 Windows 分区已打开/dev/sda1,但可能在某种程度上出现了问题,我的 GRUB 脚本显示如下:

menuentry "Windows 7 (loader)"{
    set root=(hd0,1)
    chainloader +1
    boot
}

如何让 Windows 7 再次启动?

答案1

下载其中一个 Windows 7 ISO 映像并将其刻录到 DVD。

http://www.mydigitallife.info/download-windows-7-iso-official-32-bit-and-64-bit-direct-download-links/

然后您需要启动到恢复控制台,并使用 BCDEdit 命令:

http://technet.microsoft.com/en-us/library/cc709667(WS.10).aspx

http://support.microsoft.com/kb/919529(不是专门针对您的问题,而是介绍了如何解决启动问题)

发生的情况是,当您删除分区时,您会丢弃存储在 BCD 存储中的启动信息(与旧的 bo​​ot.ini 功能相同)

答案2

分区表无效“与 BCD 存储无关。这是 MBR 引导代码的错误,表明 MBR 分区表信息对一个或多个主分区具有未定义的状态字节。实际上,很难获得并仍然拥有其他一切都认为是有效分区表的东西,就像这里一样。

查看您提供的信息,很明显,出于某种原因,您的第一个主分区的 VBR 中存在 MBR 引导代码。当然,该 MBR 代码无法找到嵌入式分区表。(它只是从您覆盖的实际 VBR 中找到了一些混乱的数据。)您可能使用该ms-sys命令覆盖了 VBR。

fixboot您应该查看的是 Windows 恢复环境,而不是。fixmbr当然,您刚刚删除了恢复环境。…

相关内容