我发现一些奇怪的事情:
SMART Self-test log structure revision number 1
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# 1 Short offline Completed without error 00% 8003 -
# 2 Extended offline Completed: read failure 90% 8001 5907400
# 3 Extended offline Completed: read failure 90% 8001 5907400
# 4 Extended offline Completed: read failure 90% 8001 5907400
# 5 Extended offline Completed: read failure 90% 8001 5907400
# 6 Short offline Completed: read failure 80% 8001 5907400
# 7 Short offline Completed: read failure 80% 8000 5907400
# 8 Extended offline Completed without error 00% 1 -我的驱动器抛出了大量ATA错误,数据无法读取。我决定让它,所以我运行hdparm安全擦除程序,以及抛出一个shred对它。由于这是一个小(500 is的三星EVO) SSD,它的速度相对较快。我又跑了一个smartctl -t short .它“修复”了自己。
驱动器仍然具有具有以下属性的ATA Error Count: 207:
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE
5 Reallocated_Sector_Ct 0x0033 075 075 010 Pre-fail Always - 123
9 Power_On_Hours 0x0032 098 098 000 Old_age Always - 8004
12 Power_Cycle_Count 0x0032 099 099 000 Old_age Always - 27
177 Wear_Leveling_Count 0x0013 099 099 000 Pre-fail Always - 4
179 Used_Rsvd_Blk_Cnt_Tot 0x0013 075 075 010 Pre-fail Always - 123
181 Program_Fail_Cnt_Total 0x0032 100 100 010 Old_age Always - 0
182 Erase_Fail_Count_Total 0x0032 100 100 010 Old_age Always - 0
183 Runtime_Bad_Block 0x0013 075 075 010 Pre-fail Always - 123
187 Reported_Uncorrect 0x0032 099 099 000 Old_age Always - 207
190 Airflow_Temperature_Cel 0x0032 060 051 000 Old_age Always - 40
195 Hardware_ECC_Recovered 0x001a 199 199 000 Old_age Always - 207
199 UDMA_CRC_Error_Count 0x003e 099 099 000 Old_age Always - 1
235 Unknown_Attribute 0x0012 099 099 000 Old_age Always - 12
241 Total_LBAs_Written 0x0032 099 099 000 Old_age Always - 3737223587是什么原因导致智能测试突然“修复”自己?我觉得这个驱动器不能再被信任了?然而,我怀疑三星现在会不会RMA,因为它没有失败.
编辑:为了完整的故事,三星确实更换了一个全新的驱动器。
发布于 2022-09-17 02:51:10
该数据与允许纠正多个比特错误的纠错信息一起存储,并检测(更高的)位错误数。
简单的情况是在四个双边投资条约中获得多数票:
0000 - '0', no error
0001 - '0', 1 error
0010 - '0', 1 error
0011 - uncorrectable
0100 - '0', 1 error
0101 - uncorrectable
0110 - uncorrectable
0111 - '1', 1 error
1000 - '0', 1 error
1001 - uncorrectable
1010 - uncorrectable
1011 - '1', 1 error
1100 - uncorrectable
1101 - '1', 1 error
1110 - '1', 1 error
1111 - '1', 0 errors该方法允许修正1个错误,检测2个错误。如果你有3个错误,你会得到错误的结果。当然,实际的方法使用更大的组,所以它只将数据扩展了几个百分点,而不是4倍,还考虑到错误通常是聚集在一起的。
因此,一个“不可纠正的”错误不一定是坏媒体,它只是意味着数据现在是无法恢复的。覆盖数据可以很容易地修复这个问题,而我的怀疑就是发生了这样的事情。
在显示错误之前,通常会多次尝试读取错误。如果其中一次尝试成功,那么块将被重新映射,并显示在Used_Rsvd_Blk_Cnt_Tot中。由于123的原始值被转换为75,所以我预计大约有四分之一的保留块被使用,因此可能存在大约500个。当剩下10%的块时,该属性将进入FAILING_NOW状态,因此大约为50。
所以是的,我认为SSD有点不可靠,因为它除了读取失败之外,还恢复了一些重新分配的部门。
https://unix.stackexchange.com/questions/717605
复制相似问题