如何删除 Windows 启动分区后留下的零大小不可见分区

如何删除 Windows 启动分区后留下的零大小不可见分区

出售的计算机预装 Windows 7有一个小“系统保留”启动分区在磁盘开头,这其实没有必要,因为没有这个,Windows 可以单独启动或与 Ubuntu 一起启动。所以我决定从几台运行正常的机器上删除它(除了需要额外努力将分区向左移动/调整大小,有时还需要修复 Windows 启动管理器)。

然而,在其中一台机器上,我惊讶地看到新的分区号从 2 开始分区。而 fdisk -l 的输出如下:

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb2   *        2048    52426751    26212352    7  HPFS/NTFS/exFAT
/dev/sdb3        52426752   942684159   445128704    7  HPFS/NTFS/exFAT
/dev/sdb4       942684160   976773119    17044480   12  Compaq diagnostics

我花了一些时间才发现,造成这种情况的原因是,在我删除该分区后,不知何故留下了一个大小为零的不可见分区,如下面的 sfdisk -l 输出所示:

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/sdb1          0       -       0          0    0  Empty
/dev/sdb2   *      0+   3263-   3264-  26212352    7  HPFS/NTFS/exFAT
/dev/sdb3       3263+  58679-  55416- 445128704    7  HPFS/NTFS/exFAT
/dev/sdb4      58679+  60801-   2122-  17044480   12  Compaq diagnostics

除了不雅的分区编号之外,我很好奇我怎样才能摆脱这个奇怪的分区?

答案1

你不能,因为它不在那里。在 MBR 磁盘上,有总是恰好有四个主分区条目,但其中一些条目可能未使用。sfdisk -l您使用的命令列出了所有这些条目,即使它们未使用。换句话说,sfdisk -l显示的是“幽灵”条目——数据结构存在,但它们没有定义分区。您可以移动数字,这样您就有了分区 1-3 而不是 2-4,但使用sfdisk -l将显示类似的“幽灵”分区 #4。这不是错误、缺陷或问题;它只是 MBR 数据结构的定义方式。

我提到过你可以移动分区号。据我所知,使用 、 或 进行此操作很麻烦,fdisk而且sfdisk如果parted你尝试这样做,你还可能使 Windows 无法启动,因为 Windows 对其分区很挑剔。因此,我不建议你尝试;只要接受你的分区以 #2 开头的事实即可。但是,如果这让你感到烦恼,以至于冒着 Windows 安装无法启动的风险,你可以尝试我的修复零件程序。它包括一个s对分区进行排序的选项;这应该会将它们的数字向下移动 1。但是,如果您尝试这样做并且 Windows 无法启动,那么我无法帮助您,因为我不是 Windows 专家。

相关内容