我的三星HM640JJ硬盘驱动器(在HP Pavilion dv6笔记本电脑中)的SMART C5值是“黄色状态=注意”
C5昨天是10,今天是21。
C4 (Reallocation Event Count) = 0
和 05 (Reallocated Sectors Count) = 0
如何强制固件重新分配它们?
- 我删除了分区,再次重新创建了分区并格式化了整个驱动器。
- 我跑了
chkdsk /r /f
- 我运行了BIOS磁盘检查实用程序和其他诊断/修复工具
我的三星HM640JJ硬盘驱动器(在HP Pavilion dv6笔记本电脑中)的SMART C5值是“黄色状态=注意”
C5昨天是10,今天是21。
C4 (Reallocation Event Count) = 0
和 05 (Reallocated Sectors Count) = 0
如何强制固件重新分配它们?
chkdsk /r /f
Answers:
简短答案:为该扇区写一些新内容(甚至为零-长格式也是如此)。
如今,硬盘驱动器试图从主机中隐藏坏扇区。主机仅要求驱动器返回特定扇区号的内容。通常,驱动器读取该扇区,然后将其返回给主机,一切正常。
硬盘驱动器知道读取的值是否有效,因为驱动器使用纠错码(ECC)来验证读取的内容是否正确。如果驱动器检测到该扇区的内容无效,它将重试读取。希望是,如果仅再次读取它,则可能会获得正确的扇区内容。它会一直重试,直到获得一个合适的值,或者达到其时间限制(正式称为命令完成时间限制,即CCTL)为止。
在这些重试过程中,驱动器将显示为已耗尽。因为它不再响应命令。
备用部门
大多数现代驱动器包含许多“备用”扇区(例如1,024个备用扇区)。如果驱动器识别出一个坏扇区,它将停止使用它。任何读取或写入该损坏扇区的请求都将透明地重定向到备用扇区。标记出坏扇区,然后将其数据重新分配给备用扇区,这称为“重新分配事件”。重新分配的扇区总数(以及您已用完的空闲扇区数)就是“ 重新分配的扇区数”。
在本例中,从我自己的一个硬盘驱动器中发现有64个扇区损坏。这意味着已使用了驱动器的64个备用扇区:
ID Current Worst Threshold Raw
============================= ======= ===== ========= ===
(05) Reallocated Sector Count 192 192 140 64
在同一硬盘上,有4个重新分配事件。这意味着在四种情况下,驱动器将扇区标记为坏扇区,而是使用备用扇区。
ID Current Worst Threshold Raw
============================= ======= ===== ========= ===
(05) Reallocated Sector Count 192 192 140 64
(C4) Reallocated Event Count 196 196 0 4
这些重新读取扇区,消耗备件的操作在计算机的后面都是一件好事。这意味着主机操作系统不必处理出现故障的扇区的问题。驱动器本身可以自行处理这些细节。
Bonus Chatter:在过去,您的硬盘驱动器随附有固定的标签。该标签包含工厂缺陷清单 ; 驱动器上所有已知坏点的列表。
如果执行了驱动器的低级格式化,则必须使用工具键入坏点的所有圆柱头扇区位置。
SCSI驱动器有一个命令,IOCTL_DISK_REASSIGN_BLOCKS
告诉操作系统在检测到它后在驱动器上重新分配坏点。在IDE驱动器中,这一切都是自动发生的,无需操作系统干预。
理想情况下,驱动器将识别出该扇区出现故障,将数据移至备用扇区,而不再使用原始扇区。但是,如果驱动器无法成功读取扇区,会发生什么?
这是什么Pending Sectors
。驱动器已检测到某个扇区发生故障,需要重新映射为备用磁盘。但是,只有成功读取数据,它才能这样做。当驱动器知道某个扇区损坏并需要重新映射时,它却无法做到这一点,因为它正在等待从该扇区中读取良好的数据:这称为“ 待处理扇区数”:
ID Current Worst Threshold Raw
============================= ======= ===== ========= ====
(05) Reallocated Sector Count 192 192 140 64
(C4) Reallocated Event Count 196 196 0 4
(C5) Current Pending Sector 100 100 0 2
我的硬盘驱动器具有2个扇区,该驱动器可以识别为坏扇区,但目前无法重新分配。如果要读取这些“挂起的扇区”之一,则驱动器可能会重试(以及重试和重试),并最终将读取错误返回给主机操作系统:
驱动器最终可以通过两种方式重新分配该扇区并消耗另一个备用扇区:
如果驱动器最终读取了该扇区,则它知道可以重新分配该扇区。
驱动器可以重新分配该扇区的另一种方法是,让它知道该扇区的内容无关紧要;您不再关心其中的内容。你是怎样做的?
通过为该行业写一些新东西。
每当您读取或写入硬盘驱动器上的一个扇区时,都必须读取/写入整个 512字节的扇区1。您不能只写一部分扇区。当OS将数据写入扇区时,它必须指定整个 512字节。如果您告诉硬盘驱动器您希望这些新内容替换该坏扇区,则驱动器会知道您根本不在乎坏扇区中的当前内容。然后,它可以将坏扇区重新分配给其中一个备用扇区,并且该扇区不再处于Pending状态。
这就是为什么当人们要求拥有一些Current Pending Sectors
硬盘时,常见的建议是使用一种工具(例如Western Digital的Data LifeGuard)将全零写入驱动器。
通过向驱动器上的每个扇区写入零,您就告诉驱动器它最终可以重新分配所有那些讨厌的未决扇区。擦拭后,您所有的一切Pending Sectors
都会变成Reallocated Sectors
:
ID Current Worst Threshold Raw
============================= ======= ===== ========= ====
(05) Reallocated Sector Count 192 192 140 66
(C4) Reallocated Event Count 196 196 0 5
(C5) Current Pending Sector 100 100 0 0
注意:不一定要使用像Western Digital的Data LifeGuard这样的“低级”工具。如果您指示Windows执行卷的完整格式(即非快速格式),它将对卷中的每个扇区写入零。
掌握了这些知识之后,我们将探索一个通常令人困惑的场景。
在集成驱动电子(IDE)出现之前,主机操作系统负责检测坏扇区,重试读取,将数据移动到另一个扇区并将旧扇区标记为坏扇区。
如果要运行chkdsk /r c:
使用主机操作系统的操作系统,它将识别出“待处理”的扇区是坏的,并将其本身标记为坏扇区,并且永远不要尝试再次使用它们:
> C:\Windows\system32>chkdsk /r c:
The type of the file system is NTFS.
Volume label is OS.
12 KB in bad sectors.
因此,假设有一个512字节的扇区硬盘驱动器,12 KB的“待处理扇区”或在本示例中为操作系统标记为“坏扇区”的12KB,则对应于十进制的24或十六进制的0x18,如SMART磁盘实用程序所示例如水晶磁盘信息:
ID Attribute Name Current Worst Threshold Raw
============================= ======= ===== ========= ====
(C5) Current Pending Sector 100 100 0 18
注意:Western Digital的Data LifeGuard v1.31(截至2017年8月31日最新)实用程序似乎无法正确显示当前的SMART'Raw'计数器值。
现在,如果执行完整格式 (将零写入卷中的每个扇区):
这意味着所有Pending
将要重新分配的部门。现在,归档系统再次使用这些扇区是安全的。为了指示归档系统这些扇区不再“坏”,您可以执行一个选项来重新评估坏扇区:
>chkdsk c: /B
命令文档说的地方
/B NTFS only: Re-evaluates bad clusters on the volume
(implies /R)
要么
根据:https : //technet.microsoft.com/zh-cn/library/cc730714(v=ws.11).aspx
/B NTFS only: Clears the list of bad clusters on the volume and
rescans all allocated and free clusters for errors. /b includes
the functionality of /r. Use this parameter after imaging a
volume to a new hard disk drive.
这是一整篇洛塔作品,以及一遍完整的洛塔屏幕截图,这些内容永远不会被阅读。
您无需执行任何操作-到目前为止。重新分配计数的意思是“磁盘发现有缺陷的扇区并成功地对其进行了重新分配”。固件已经解决了该问题。
您只需要知道驱动器开始出现故障即可。在将来的某个时候,驱动器将没有剩余的扇区可用于重新分配,您将丢失数据。如果丢失了一些重要的块,则可能会丢失驱动器上的所有数据。
因此,请密切注意此价值或立即购买新驱动器,以免忘记它。
我对这里描述的方法有很好的经验,https://www.smartmontools.org/wiki/BadBlockHowto。我的磁盘正在发出噪音并停止工作,因此我使用了智能报告和公式来计算不良块并使用dd清除它。我很幸运,因为smart仍在报告当前扇区数,但是磁盘已经运行了大约2年。我确实买了替代品,但从未使用过。在我看来,聪明也不是那么准确。
也许您不知道此工具: HD Sentinel
硬盘前哨(HDSentinel)是一款多操作系统SSD和HDD监视和分析软件。它的目标是查找,测试,诊断和修复硬盘驱动器问题,报告并显示SSD和HDD运行状况,性能下降和故障。硬盘前哨提供完整的文字说明,技巧,并显示/报告有关计算机内部和外部机柜(USB硬盘/ e-SATA硬盘)中的硬盘和固态磁盘的最全面的信息。提供许多不同的警报和报告选项,以确保最大程度地保护您的宝贵数据。
这似乎是执行此类操作的好工具。但是请注意,某些运行选项可能会完全破坏数据。
您需要使用一种写入驱动器每个扇区的工具。否则,就没有办法。如果驱动器分配了备用扇区并重新映射,则应将哪些数据放入备用扇区?它不知道,因为它尝试从现有领域读取失败。只有写操作才能清除错误。
尝试使用Spinrite 6或HDD再生器可启动CD。他们确实编写了表面测试,因此它应该清除挂起的坏扇区并增加重新分配的计数。
为了添加另一个解决方案,我最近使用了Victoria来修复2个因挂起扇区而失败的磁盘,但是该磁盘不会自行自动重新映射它们。
维多利亚是磁盘的低级图形界面,包括(如果您真的想!)磁盘的逐个字节编辑,强制扇区重新映射故障,支持USB驱动器和廉价的China-bay USB-2-sata适配器,更改出厂设置的智能属性和功能等。
缺点-它是由俄罗斯开发人员开发的,如果您有任何问题,请让我打开潘多拉盒子。
在Victoria的帮助下,我抓住了第一个未能重新映射的扇区,然后通过强制重新映射对每个扇区进行了“读取”扫描。然后,我对整个磁盘进行了“验证”,重新运行了智能检查,现在一切正常。
...但是,我有备用磁盘,因此我现在正在交换它们。这有点吓人,因为我一直都在备份解决方案之间!