我的硬盘包含两个分区:sda(抱歉,linux 名称)包含 Windows XP,sdb 包含 Windows 7 和 grub 引导加载程序。我调整了它们的大小(使 Windows 7 分区更大),但之后,Windows 7 分区无法加载。我使用 Windows 7 安装盘修复了分区,但它反而损坏了我的 Windows XP 分区。
现在,我无法启动 Windows XP 或从 Windows 7 安装中读取此分区。GParted 可以读取(更新的)分区表,但它会给出有关 Windows XP 分区的错误消息(与 ntfsresize 工具有关),我认为 Windows XP 分区上的 NTFS 文件系统仍包含旧的大小或其他损坏的数据。
有人能告诉我如何启动 Windows XP 分区的恢复过程吗?我确定所有数据都在那里,我只需修复指向它的指针。
答案1
我想说第一步是在情况变得更糟之前备份你所拥有的东西。如果可以的话,将整个驱动器 dd 到另一个驱动器上的映像文件中。
dd if=/dev/sda of=/mnt/another-drive-with-space.img bs=1M
如果你没有空间,你可以压缩图像:
dd if=/dev/sda bs=1M | gzip -9 > /mnt/another-drive-with-space.img.gz
接下来,Windows 确实讨厌从主驱动器上的主分区以外的任何地方启动。我会尝试移除您的 win7 磁盘,然后插入 XP 安装磁盘并选择“安装”,然后选择“修复”。这应该可以修复 Windows 引导加载程序并重新安装系统文件(假设该分区可以被 XP 识别)。如果无法识别磁盘,请查看终极启动 CD。
接下来,假设您现在可以启动 XP,请将您的 win7 磁盘作为主硬盘放入计算机中。从 Win7 安装盘启动并执行“自定义”、“安装”和“修复”(我想,我还没有在 Win7 上尝试过这个)。假设这与 Vista/XP 没有太大区别,它应该会找到您的 XP 安装并为其创建一个引导加载程序条目。一旦您启动到 Win7,您就可以将您的 linux 安装添加到引导加载程序中,和/或使用以下命令调整您的引导加载程序设置易BCD。
您还可以将备份映像转换为 VirtualBox 映像,并在 VM 中运行 XP 安装,而不是双启动,除非您需要 XP 来玩游戏。
另一个选择是智能启动管理器。我以前使用过 CD 版本,当 MBR 损坏时启动操作系统