NTFS 磁盘在 SMART 中出现错误

NTFS 磁盘在 SMART 中出现错误

我有一个 NTFS 磁盘用于存储数据,当 IDE/SATA 适配器出现问题(导致关闭我的磁盘)后,SMART 显示错误。

我想知道我还需要做什么来检查并修复此磁盘上的错误。

我已经使用 fsck 来检查磁盘,但是对我来说它不够详细。

    andre@PITCAIRN:~$ sudo fsck /dev/sdb1
fsck from util-linux 2.20.1
Mounting volume... OK
Processing of $MFT and $MFTMirr completed successfully.
Checking the alternate boot sector... OK
NTFS volume version is 3.1.
NTFS partition /dev/sdb1 was processed successfully.

SMART

SMART Attributes Data Structure revision number: 10
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  1 Raw_Read_Error_Rate     0x000f   115   099   006    Pre-fail  Always       -       95292924
  3 Spin_Up_Time            0x0003   100   100   000    Pre-fail  Always       -       0
  4 Start_Stop_Count        0x0032   097   097   020    Old_age   Always       -       3419
  5 Reallocated_Sector_Ct   0x0033   100   100   036    Pre-fail  Always       -       0
  7 Seek_Error_Rate         0x000f   067   060   030    Pre-fail  Always       -       5425551
  9 Power_On_Hours          0x0032   093   093   000    Old_age   Always       -       6345
 10 Spin_Retry_Count        0x0013   100   100   097    Pre-fail  Always       -       0
 12 Power_Cycle_Count       0x0032   099   099   020    Old_age   Always       -       1501
183 Runtime_Bad_Block       0x0032   100   100   000    Old_age   Always       -       0
184 End-to-End_Error        0x0032   100   100   099    Old_age   Always       -       0
187 Reported_Uncorrect      0x0032   046   046   000    Old_age   Always       -       54
188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0
189 High_Fly_Writes         0x003a   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0022   062   048   045    Old_age   Always       -       38 (Min/Max 31/39)
194 Temperature_Celsius     0x0022   038   052   000    Old_age   Always       -       38 (0 19 0 0 0)
195 Hardware_ECC_Recovered  0x001a   041   022   000    Old_age   Always       -       95292924
197 Current_Pending_Sector  0x0012   100   100   000    Old_age   Always       -       20
198 Offline_Uncorrectable   0x0010   100   100   000    Old_age   Offline      -       20
199 UDMA_CRC_Error_Count    0x003e   200   200   000    Old_age   Always       -       0
240 Head_Flying_Hours       0x0000   100   253   000    Old_age   Offline      -       96499325213315
241 Total_LBAs_Written      0x0000   100   253   000    Old_age   Offline      -       2999278438
242 Total_LBAs_Read         0x0000   100   253   000    Old_age   Offline      -       866573403

SMART 的错误

SMART Error Log Version: 1
ATA Error Count: 54 (device log contains only the most recent five errors)
    CR = Command Register [HEX]
    FR = Features Register [HEX]
    SC = Sector Count Register [HEX]
    SN = Sector Number Register [HEX]
    CL = Cylinder Low Register [HEX]
    CH = Cylinder High Register [HEX]
    DH = Device/Head Register [HEX]
    DC = Device Command Register [HEX]
    ER = Error register [HEX]
    ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.

Error 54 occurred at disk power-on lifetime: 6088 hours (253 days + 16 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 ff ff ff 4f 00      10:17:38.985  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:38.983  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:38.971  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:38.970  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:38.970  READ FPDMA QUEUED

Error 53 occurred at disk power-on lifetime: 6088 hours (253 days + 16 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 ff ff ff 4f 00      10:17:35.999  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:35.999  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:35.998  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:35.998  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:35.998  READ FPDMA QUEUED

Error 52 occurred at disk power-on lifetime: 6088 hours (253 days + 16 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 ff ff ff 4f 00      10:17:29.920  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      10:17:29.918  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      10:17:29.909  IDENTIFY DEVICE
  ef 03 45 00 00 00 a0 00      10:17:29.909  SET FEATURES [Set transfer mode]
  27 00 00 00 00 00 e0 00      10:17:29.909  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

Error 51 occurred at disk power-on lifetime: 6088 hours (253 days + 16 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 ff ff ff 4f 00      10:17:27.106  READ FPDMA QUEUED
  27 00 00 00 00 00 e0 00      10:17:27.104  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]
  ec 00 00 00 00 00 a0 00      10:17:27.095  IDENTIFY DEVICE
  ef 03 45 00 00 00 a0 00      10:17:27.095  SET FEATURES [Set transfer mode]
  27 00 00 00 00 00 e0 00      10:17:27.095  READ NATIVE MAX ADDRESS EXT [OBS-ACS-3]

Error 50 occurred at disk power-on lifetime: 6088 hours (253 days + 16 hours)
  When the command that caused the error occurred, the device was active or idle.

  After command completion occurred, registers were:
  ER ST SC SN CL CH DH
  -- -- -- -- -- -- --
  40 51 00 ff ff ff 0f  Error: UNC at LBA = 0x0fffffff = 268435455

  Commands leading to the command that caused the error were:
  CR FR SC SN CL CH DH DC   Powered_Up_Time  Command/Feature_Name
  -- -- -- -- -- -- -- --  ----------------  --------------------
  60 00 08 ff ff ff 4f 00      10:17:24.293  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:24.279  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:24.279  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:24.279  READ FPDMA QUEUED
  60 00 08 ff ff ff 4f 00      10:17:24.279  READ FPDMA QUEUED

我正在对该未安装的磁盘运行扩展自检。

答案1

驱动器上有 20 个坏扇区。它们可能只是因为写入过程中突然断电而损坏。您可以尝试向它们写入零,看看它们是否会恢复。您需要识别有问题的扇区号,您可以从错误日志中看到,第一个是 268435455。首先,尝试读取它以验证它是否坏了:

sudo dd if=/dev/sdb bs=512 of=/dev/null count=1 iflag=direct skip=268435455

如果这是 4k 扇区驱动器,则 bs= 应使用 4096,而不是 512。这应该会出错。如果出错,请用零写入:

sudo dd if=/dev/zero bs=512 of=/dev/sdb seek=268435455 count=1 oflag=direct

在按下回车键之前,请仔细检查命令;如果命令不完全正确,则可能会破坏数据。

对错误日志中的每个扇区重复此操作,然后再次检查 SMART 状态。待处理计数应该会下降。如果重新分配的计数上升,则扇区已物理损坏,您应该更换驱动器。如果没有,应该没问题。您可以尝试运行长时间的 SMART 自检来查找更多坏扇区。

答案2

您已经完成了修复驱动器所需的所有操作。SMART 是一种监控系统,是硬盘驱动器控制器的一项功能,因此操作系统所做的唯一事情就是显示 SMART 系统收集的数据。您无法重置它,因此如果 SMART 检测到某些被视为错误的东西,它将永远被记住。SMART 检测到的错误不一定是驱动器故障的标志,但确实可能存在问题。无论如何,请确保您创建了良好的备份,这是您应该做的。

相关内容