我在朋友的电脑上重新安装了 Windows XP。电脑里满是病毒和恶意软件,所以我用 Ubuntu Live CD 启动,使用 GParted 创建一个新分区(恢复),将所有文件移到该分区,然后删除主分区。
重新安装 Windows XP 后,我将其文件移回 C: 驱动器,然后进入磁盘管理以删除分区。但是,D: 分区现在有一个系统标志,即使 Windows 安装在 C: 驱动器上,带有启动标志和设置,而 D: 上什么都没有。
我怎样才能安全地删除它(Windows 不允许从 GUI 删除它)而不失去对 XP 安装的访问权限,这样我就可以从 C 分区的增长中恢复空间?
以下是分区的图片:
更新:我被告知删除系统分区会破坏引导加载程序;能否给我一个示例或指南,说明如何回收此空间?当我最终修复此问题时,我不想“临时”弄清楚。
答案1
如果分区确实是空的,我建议再次使用 LiveCD 删除该分区。然后根据需要使用 Windows 重新创建它。
答案2
您是否使用编辑器查看过 boot.ini 文件(C: 中的隐藏/系统文件)?它包含 Windows 引导加载程序的条目,也许仍有一些内容指向那里。
基本上,启动顺序是:主引导记录(由 fixboot /MBR 或类似过程修复)查找活动分区(LiveCD 可以将第一个分区标记为活动分区,因此您可以修复它),该分区加载 NTLDR,该分区加载 boot.ini,该分区显示启动菜单(或者如果只有一个条目,则从该菜单启动)。
如果确实该序列中的某些内容位于第二个分区上,则可以进行修复(XP 修复安装几乎可以解决所有可能出错的问题)。
答案3
我怎样才能安全地删除它(Windows 不允许从 GUI 删除)而不失去对 XP 安装的访问权限,这样我就可以通过扩大 C 分区来恢复空间。
如果您使用 Linux Live-CD 来完成工作,那么您可能已经知道 Linux 如何划分分区。
如果有一块 SATA 硬盘有两个分区,Linux 将显示如下内容:
/dev/sda1 which is the first partition, probably C: under Windows
/dev/sda2 which is the second partition, probably D: under Windows
要做的是彻底清除受病毒感染的分区,然后让分区表编辑器完成其工作。我会使用 来清除硬盘dd
。
我会启动我的PLD 救援 CD并输入命令:
dd if=/dev/urandom | pipemeter | dd of=/dev/sda2 && dd if=/dev/zero | pipemeter | dd of=/dev/sda2
这将用随机数据填充硬盘上的第二个分区,然后返回并将所有内容清零。您不必用随机数据填充分区,跳过此步骤可以节省时间。这取决于您的个人喜好。
如果您只想将第二个分区清零,请使用以下命令:
dd if=/dev/zero | pipemeter | dd of=/dev/sda2
再次,让分区表编辑工具完成其自己的工作。
祝你好运!