我可以通过删除坏扇区来继续使用部分损坏的硬盘吗?

我可以通过删除坏扇区来继续使用部分损坏的硬盘吗?

我的硬盘开始出现故障。我使用戴尔笔记本电脑附带的内置硬件诊断工具测试了硬盘,它告诉我硬盘有坏扇区。所以,我知道这些是无法保留内存的部分。我很好奇我是否可以通过在它们周围创建卷来避免这些扇区,并继续使用硬盘再使用几年?我卸下了硬盘并将其作为外部设备连接起来,目前正在通过我的 Mac 笔记本电脑运行程序“badblocks”来确定坏块的数量。我是否可以删除坏的部分并单独使用好的部分?

我打算将 Windows 10 重新安装到我的戴尔笔记本电脑的这块 500GB 硬盘中。因此,我想我可以使用坏块来确定哪些扇区范围是“坏的”——例如,如果前 100GB 是好的,而 100021570765 字节到 166702617940 字节之间有坏块,那么我可以在安装过程中使用 Windows 分区工具创建一个 100GB 分区,然后创建一个 70GB 分区(其中包含坏块),然后使用剩余空间创建第三个分区。然后仅将分区 1 和 3 格式化为卷,以便未分配的空间封装所有坏块?

答案1

从技术上讲是的。类似的方法已经使用了 50 年,这实际上也是“badblocks”工具的部分目的(使用 ext2/ext4 格式化分区时,可以直接嵌入其输出)。甚至 Windows 本身也会跟踪坏扇区 - 如果chkdsk发现任何坏扇区,它会将它们分配给名为“$BadClus”的隐藏文件,以便它们永远不会被其他文件重复使用。

然而,现代硬盘有足够的隐藏“备用”空间,它们会自动将坏扇区重新映射到其他地方操作系统。只要您写入已标记为坏的扇区,就会发生这种情况 - 其逻辑地址保持不变,但物理上它现在进入备用区域。(SMART 会向您显示重新映射扇区的计数器。)

因此实际上您不需要这样做,直到坏扇区数量增加到没有更多空间可以重新映射它们为止。当您达到无法重新映射的程度时,磁盘已经变得非常糟糕,以至于将其用作主系统磁盘将带来不必要的风险。

答案2

您的硬盘可能已经在硬件层面上这样做了。当操作系统能够注意到足够多的坏扇区时,就该更换硬盘了。

答案3

硬盘已经在自己的固件中执行此操作。当检测到坏块时,它们会在“坏块映射”中对其进行标记,并且它们会使用存储在备用区域中的好扇区来代替坏块扇区(即所有磁盘都带有一些无法被操作系统访问的缓冲空间;只有在检测到坏块时才会使用此备用空间)。

这是对“我能做吗”的回答,但对“我应该做吗”的回答是绝对没有如果硬盘开始产生坏块,则表示已经出现问题。有可能硬盘会以指数级增长产生更多坏块,直到操作系统无法检测到硬盘。这并不意味着这种情况一定会发生,但没有人能真正确定这种情况会不会发生在您的特定驱动器上。底线是,如果出现坏块,请更换驱动器。

答案4

我不会因为一个坏扇区就扔掉磁盘。截止点取决于使用情况。如果有 10-100 个坏扇区(但远少于 1% 的驱动器空间),我不会单独使用磁盘,但我会使用它RAID 1,又称镜像

RAID 适用于中塔台式机和服务器。一般来说,笔记本电脑不应使用 RAID。您也不能通过 USB 使用 RAID。(我见过几台支持 RAID 的大型游戏笔记本电脑,但它们是例外,证明了这一规则。)

除了购买成本外,运行旧驱动器还会产生能源成本。每次磁盘发现某个扇区出现故障,就意味着磁盘必须多次重写该数据块。坏扇区可能会“连续”出现,这意味着驱动器的活跃时间更长。但比能源消耗更糟糕的是,大文件复制可能需要很长时间,特别是如果您在 RAID 0 中使用多个旧磁盘,这会增加每次大文件操作中遇到的坏扇区数量。众所周知,RAID 对操作需要多长时间非常挑剔。因此,如果您将带有一些坏扇区的驱动器放入 RAID 0,则整个文件复制失败的可能性会大大增加。

Drobo 和其他专业消费者多驱动器 NAS 盒具有优化功能,可能比内部 RAID 控制器更好地处理部分故障驱动器。这些 NAS 称为 JBOD,是“一堆磁盘”的缩写。如果您有多个这样的驱动器有坏扇区并且不准备扔掉它们,您应该看看这些 NAS/JBOD 盒。它们可以在多个磁盘上保存数据的多个副本。

如果您拥有许多相同型号或同时制造的磁盘,那么许多驱动器可能会同时出现故障,从而导致连锁故障和数据丢失。但只要旧驱动器的制造商和型号不同,您就不太可能在 JBOD 中同时丢失许多驱动器。

相关内容