为什么删除分区会导致数据丢失?

Cel*_*tas 2 hard-drive formatting partitioning

我不小心删除了一个分区,并且给定分区本质上就是空间的划分方式,认为修复错误不会太难。我错了。为什么删除分区会使数据可访问?当我尝试访问磁盘时,现在它说它需要格式化才能访问。这让我感到困惑,因为格式没有改变。

TOO*_*GAM 5

为什么删除分区会导致数据丢失?

它没有。

我的意思是,有时它不会。
有时确实如此。
这取决于你使用什么软件。

从理论上讲,删除分区需要导致数据丢失没有充分的理由。毕竟,分区,基本上只是一组数字,位于特定位置(称为“分区表”),指定分区的边界。理论上,将这些数字更改为零不会导致分区边界内的其他扇区发生变化。因此,理论上,您的文件系统卷应该保持原样(不变)。

然而,该理论有一个明显的例外。

无论出于何种原因,(至少某些版本的)MS-DOS FORMAT.COM 预计新文件系统卷的第一个扇区包含清除为零的位(在 FORMAT 运行之前)。将这些位清零对于 FORMAT.COM 来说是一项明智的任务,但相反,FORMAT.COM 只是希望该任务完成。

为了适应这种奇怪的期望,MS-DOS FDISK.EXE(分区软件)会擦除第一个扇区。

最明智的工具是 FORMAT。 Linux 手册页 @ die.net:fdisk声明,“我们认为这是 DOS FORMAT 和 DOS FDISK 中的错误。” 但是,由于这两个软件都带有相同的操作系统,因此这种安排往往效果很好。如果人们只是按照 MS-DOS 手册中的说明进行操作,他们就不会意识到这种情况。

尽管这种安排可能看起来不合适,但一些其他操作系统通常会支持做同样的事情,以便与 MS-DOS 相当兼容。这是因为 MS-DOS 很流行(在 Windows 95 和 Microsoft Windows 的后续版本之前),因此其他操作系统寻求与 MS-DOS 兼容。

毫无疑问:您可以使用某些软件(例如 OpenBSD 的 fdisk)来“擦除”一个分区(至少对于基于 MBR 的分区,定义为将分区类型标识符设置为零)并且不会丢失分区中的任何数据。划分。如果您记录了设置(边界、类型标识符),您可以重写这些值,并且分区中的所有数据都保持原样。

因此,分区开头的数据是否被破坏,取决于您使用的软件。(或者,可能对于某些软件,您选择了哪些设置/选项。)