这是驱动器故障还是其他原因?

Tom*_*man 12 smart disk-utility

我有一个一年前的驱动器,这给我带来了麻烦。大约 8-10GB 的传输后,将数据复制到它会失败。它自发地变为“只读”。它的格式正确,ext4,我是所有者。在线搜索,看起来这是驱动器故障的症状。

我如何确认这一点,因为 SMART 测试另有说明?

我做了很明显的事情,比如检查磁盘工具,并运行扩展的 SMART 测试。磁盘工具的所有结果都完美无缺。读取错误率和重新分配的扇区显示为零。

我猜这个磁盘坏了,SMART 没有检测到它,虽然我不明白为什么。我想确认是什么问题。

我对机器中的其他磁盘没有问题。

表:

PROC / PROC PROC nodev,NOEXEC,为nosuid 0 0 UUID = 62e11126-3f06-43f0-bd5a-29b411bb8160 / EXT4
错误=重新装入-RO 0 1
UUID = 5e2d6348-be6e-4d5d-8f7f-1a5c1cab7db2 /家庭EXT4
默认0 2 UUID = 97e594a3-c783-4c73-97c0-682afcdc88b6 none swap sw 0 0
/dev/disk/by-label/Media /media/Media ntfs-3g defaults,user,locale=en_GB.utf8 0 0

输出dmesg | less:(上面还有数百个“缓冲区 I/O 错误”行)

[22734.511487] Buffer I/O error on device sda1, logical block 302203
[22734.511489] Buffer I/O error on device sda1, logical block 302204
[22734.511490] Buffer I/O error on device sda1, logical block 302205
[22734.511492] Buffer I/O error on device sda1, logical block 302206
[22734.511494] Buffer I/O error on device sda1, logical block 302207
[22734.511496] EXT4-fs warning (device sda1): ext4_end_bio:251: I/O error writing to inode 9437465 (offset 4194304 size 524288 starting block 302215)
[22734.511500] ata1: EH complete
[22734.511616] EXT4-fs error (device sda1): ext4_journal_start_sb:327: Detected aborted journal
[22734.511619] EXT4-fs (sda1): Remounting filesystem read-only
[22734.519343] EXT4-fs error (device sda1) in ext4_da_writepages:2298: IO failure
[22734.538566] EXT4-fs (sda1): ext4_da_writepages: jbd2_start: 601 pages, ino 9437474; err -30
[22734.560225] ata1.00: exception Emask 0x10 SAct 0x1 SErr 0x400100 action 0x6 frozen
[22734.560253] ata1.00: irq_stat 0x08000000, interface fatal error
[22734.560256] ata1: SError: { UnrecovData Handshk }
[22734.560258] ata1.00: failed command: WRITE FPDMA QUEUED
[22734.560262] ata1.00: cmd 61/00:00:3f:68:25/04:00:00:00:00/40 tag 0 ncq 524288 out
[22734.560263]          res 40/00:04:3f:68:25/00:00:00:00:00/40 Emask 0x10 (ATA bus error)
[22734.560264] ata1.00: status: { DRDY }
[22734.560268] ata1: hard resetting link
[22735.047845] ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
[22735.052069] ata1.00: configured for UDMA/33
[22735.067810] ata1: EH complete
[22735.136249] ata1.00: exception Emask 0x10 SAct 0x3f SErr 0x400100 action 0x6 frozen  
Run Code Online (Sandbox Code Playgroud)

fsck 结果:

tom@1204-Desktop:~$ sudo fsck /dev/sda1
[sudo] password for tom: 
fsck from util-linux 2.20.1
e2fsck 1.42 (29-Nov-2011)
New_Volume: recovering journal
New_Volume contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (236669077, counted=236701938).
Fix<y>? yes

Free inodes count wrong (61048336, counted=61048349).
Fix<y>? yes
Run Code Online (Sandbox Code Playgroud)

最后但并非最不重要的是读/写屏幕抓取,这是新的。它曾经在测试期间保持相当一致。

读写屏幕截图

编辑 - 当我今天早上开机时,驱动器已从 /dev/sda 更改为 /dev/sdc,很奇怪。我确定以前没有发生过,而且我确定它是 /dev/sda。我用已知良好的 SATA 电缆交换了 SATA 电缆,并在大约 10GB 传输时看到了同样的故障。我还没换SATA接口,下次试试。(编辑 #2,它是 SATA 端口,更改它解决了问题。将此标记为过于本地化。)

输出 sudo smartctl -a /dev/sda

=== START OF INFORMATION SECTION === Model Family:     Western Digital Caviar Black Device Model:     WDC WD1002FAEX-00Y9A0 Serial Number:    WD-WCAW30776630 LU WWN Device Id: 5 0014ee 25acf2868 Firmware Version:
05.01D05 User Capacity:    1,000,204,886,016 bytes [1.00 TB] Sector Size:      512 bytes logical/physical Device is:        In smartctl database [for details use: -P show] ATA Version is:   8 ATA Standard is:  Exact ATA specification draft version not indicated Local Time is:    Fri May 25 07:16:18 2012 BST SMART support is: Available - device has SMART capability. SMART support is: Enabled

=== START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: PASSED

General SMART Values: Offline data collection status:  (0x82)   Offline data collection activity
                    was completed without error.
                    Auto Offline Data Collection: Enabled. Self-test execution status:      (   0)  The previous self-test routine completed
                    without error or no self-test has ever 
                    been run. Total time to complete Offline  data collection:      (16500) seconds. Offline data collection capabilities:           (0x7b) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    Offline surface scan supported.
                    Self-test supported.
                    Conveyance Self-test supported.
                    Selective Self-test supported. SMART capabilities:            (0x0003)  Saves SMART data before entering
                    power-saving mode.
                    Supports SMART auto save timer. Error logging capability:        (0x01) Error logging supported.
                    General Purpose Logging supported. Short self-test routine  recommended polling time:    (   2) minutes. Extended self-test routine recommended polling time:    ( 170) minutes. Conveyance self-test routine recommended polling time:      (   5) minutes. SCT capabilities:
           (0x3035) SCT Status supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 16 Vendor Specific SMART Attributes with Thresholds: ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE   1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always  
-       0   3 Spin_Up_Time            0x0027   176   173   021    Pre-fail  Always       -       4183   4 Start_Stop_Count        0x0032 100   100   000    Old_age   Always       -       774   5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always  
-       0   7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0   9 Power_On_Hours          0x0032   093   093   000    Old_age   Always       -       5518  10 Spin_Retry_Count        0x0032   100   100   000    Old_age   Always  
-       0  11 Calibration_Retry_Count 0x0032   100   100   000    Old_age   Always       -       0  12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       772 192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always  
-       39 193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       736 194 Temperature_Celsius     0x0022  118   111   000    Old_age   Always       -       29 196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always  
-       0 197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0 198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0 199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always  
-       0 200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0

SMART Error Log Version: 1 No Errors Logged

SMART Self-test log structure revision number 1 Num  Test_Description  Status                  Remaining  LifeTime(hours)  LBA_of_first_error
# 1  Extended offline    Completed without error       00%      5514         -

SMART Selective self-test log data structure revision number 1  SPAN  MIN_LBA  MAX_LBA  CURRENT_TEST_STATUS
    1        0        0  Not_testing
    2        0        0  Not_testing
    3        0        0  Not_testing
    4        0        0  Not_testing
    5        0        0  Not_testing Selective self-test flags (0x0):   After scanning selected spans, do NOT read-scan remainder of disk. If Selective self-test is pending on power-up, resume after 0 minute delay.
Run Code Online (Sandbox Code Playgroud)

ish*_*ish 12

我如何确认这一点,因为 SMART 测试另有说明?

SMART 测试是“隔离的”,即一旦smartctl命令驱动器进行测试,驱动器会在内部处理所有内容,然后返回报告。所以这可能不会揭示驱动器/控制器和主板之间的问题。

  • 明显的推断是电缆不好,但磁盘实用程序图不支持这种情况;读取也应该受到影响。不过,交换电缆/SATA 端口,看看它是否有所作为。

  • 运行长时间的自检smartctl -t long;在强制模式下最快-C(卸载所有分区!),完成后,检查状态/错误-l(一旦检测到错误,测试将中止)

  • 如果那行得通,您还记得可能在软件方面引发此问题的任何事情吗?内核升级/降级等?

  • 最后,如果所有其他磁盘都正常,这很可能是驱动器写入缓存控制器的一个奇怪错误。尽快备份数据和 RMA。

    (在评论中发表任何问题,我会更新答案。祝你好运!)

  • @TomBrossman,这不会是 2011 年 2 月左右的 Sandybridge 芯片组系统吧?他们有一个缺陷,导致 sata 端口随着时间的推移而出现故障并进行了大规模召回。 (4认同)
  • @TomBrossman,我终于在 6 个月前让它们取代了我的。他们确实让我对召回已经结束感到有些悲痛,但他们最终确实给我寄了一个替代品。检查BIOS是否列出了南桥的步进,如果是B2,那就是召回的,他们应该更换它。 (3认同)
  • @TomBrossman:主板上的英特尔 SATA 控制器有缺陷。看到这个来验证:http://event.asus.com/2011/mb/identify_b3_motherboards/ 很好的捕捉@psusi!如果您使用的是有缺陷的 B2,一种解决方案是使用第三方控制器(通常是 Marvell)的 SATA3 端口。还请联系 Asus-intel 付费制造商和零售商以解决此问题,他们的背部没有皮肤,如果是 B2,他们必须更换它。 (3认同)