SSD——寿命终止行为

SSD——寿命终止行为

我有一块金士顿 480Gb SSD,已经 3 年了,自从我购买它以来,它的重新分配事件数量一直在稳步增加,现在已达到 17 次。我不知道在它用完备用块之前有多少次重新分配。

smartctl说它的使用寿命还剩下 4%,但我只向其中写入了大约 5TB 的数据,而制造商声称 480Gb 版本可以处理高达 160TB 的使用寿命写入量。

所以基本上听起来它要么仍然是全新的,要么接近死亡,我不知道它是哪一个。

金士顿 A400 SSD 数据表

我已经有一个备用的 SSD 来备份我的数据,但我不知道是否应该等到这个 SSD 坏掉后再克隆它。如果我理解正确的话,SSD 坏掉后会变成只读,而不是不可读,因此数据丢失的风险很低,至少我希望如此。

这是的结果smartctl

$ sudo smartctl -a /dev/sda
smartctl 7.3 2022-02-28 r5338 [x86_64-linux-5.19.0-35-generic] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Phison Driven SSDs
Device Model:     KINGSTON SA400S37480G
Serial Number:    50026B76839B7AEE
LU WWN Device Id: 5 0026b7 6839b7aee
Firmware Version: SBFKB1E1
User Capacity:    480.103.981.056 bytes [480 GB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
TRIM Command:     Available
Device is:        In smartctl database 7.3/5319
ATA Version is:   ACS-3 T13/2161-D revision 4
SATA Version is:  SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Sun Mar  5 17:56:13 2023 -03
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:  (0x05) Offline data collection activity
                                        was aborted by an interrupting command from host.
                                        Auto Offline Data Collection: Disabled.
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:                (65535) seconds.
Offline data collection
capabilities:                    (0x11) SMART execute Offline immediate.
                                        No Auto Offline data collection support.
                                        Suspend Offline collection upon new
                                        command.
                                        No Offline surface scan supported.
                                        Self-test supported.
                                        No Conveyance Self-test supported.
                                        No 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:        (  30) minutes.

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     0x0032   000   100   000    Old_age   Always       -       0
  9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       18350
 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       366
148 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       143
149 Unknown_Attribute       0x0000   100   100   000    Old_age   Offline      -       98
167 Write_Protect_Mode      0x0000   100   100   000    Old_age   Offline      -       0
168 SATA_Phy_Error_Count    0x0012   100   100   000    Old_age   Always       -       0
169 Bad_Block_Rate          0x0000   100   100   000    Old_age   Offline      -       31
170 Bad_Blk_Ct_Erl/Lat      0x0000   100   100   010    Old_age   Offline      -       0/15
172 Erase_Fail_Count        0x0032   100   100   000    Old_age   Always       -       0
173 MaxAvgErase_Ct          0x0000   100   100   000    Old_age   Offline      -       46 (Average 39)
181 Program_Fail_Count      0x0032   100   100   000    Old_age   Always       -       0
182 Erase_Fail_Count        0x0000   100   100   000    Old_age   Offline      -       16
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       1
192 Unsafe_Shutdown_Count   0x0012   100   100   000    Old_age   Always       -       309
194 Temperature_Celsius     0x0022   061   052   000    Old_age   Always       -       39 (Min/Max 23/48)
196 Reallocated_Event_Count 0x0032   100   100   000    Old_age   Always       -       17
199 SATA_CRC_Error_Count    0x0032   100   100   000    Old_age   Always       -       0
218 CRC_Error_Count         0x0032   100   100   000    Old_age   Always       -       0
231 SSD_Life_Left           0x0000   004   004   000    Old_age   Offline      -       96
233 Flash_Writes_GiB        0x0032   100   100   000    Old_age   Always       -       10513
241 Lifetime_Writes_GiB     0x0032   100   100   000    Old_age   Always       -       5528
242 Lifetime_Reads_GiB      0x0032   100   100   000    Old_age   Always       -       4146
244 Average_Erase_Count     0x0000   100   100   000    Old_age   Offline      -       39
245 Max_Erase_Count         0x0000   100   100   000    Old_age   Offline      -       46
246 Total_Erase_Count       0x0000   100   100   000    Old_age   Offline      -       596384

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  Short offline       Completed without error       00%       144         -
# 2  Extended offline    Completed without error       00%        47         -
# 3  Short offline       Completed without error       00%        47         -
# 4  Extended offline    Aborted by host               00%         0         -

Selective Self-tests/Logging not supported

答案1

我已经有一个备用的 SSD 来备份我的数据,但我不知道是否应该等到这个 SSD 坏掉后再克隆它。如果我理解正确的话,SSD 坏掉后会变成只读,而不是不可读,因此数据丢失的风险很低,至少我希望如此。

SSD——寿命终止行为

您对 SSD 行为的假设是错误的。德国计算机杂志 c't 曾经通过永久写入测试数据来测试 SSD 的行为。结果发现,其中一些(通常是更昂贵的品牌)的行为符合您的预期(仍然可以进行读取操作),而其他一些则死机了(无法进行读取或写入操作)。

允许只读访问的 SSD 已损坏但尚未失效。

使用电源按钮硬关机

309 不安全关机表明您对 SSD 的操作不当。

SSD 上的分区未对齐

关于 Daniel B. 的评论,操作系统的 5528 GiB 写入操作导致闪存上有 10513 GiB 写入操作。此开销可能是由未对齐的分区引起的。

要验证这一点,请使用 Testdisk,运行快速搜索并使用出现的备份功能创建标记为“backup.log”的文件。发布此文件。

磨损分析

如果将这两个数字(5.5 和 10.5)除以 160 TiB(额定写入容量),则在驱动器用尽其写入能力之前还有足够的余量。

查看SSD life left属性时,您会注意到两个数字加起来为 100。考虑到写入的数据量,我原本预计标准值为 96,而不是 4。在我看来,这是一个固件错误。

结论

运行备份并观察 SMART 属性随时间如何变化。

答案2

smartctl 表示其剩余使用寿命为 4%

这不是如何解释的:

在此处输入图片描述

在我看来,我们看到的原始值为 96,这表明剩余使用寿命为 96%。换句话说,smartctl 是错误的。

..自从我购买它以来,重新分配事件一直在稳步增加,现在已经有 17 个了,我不知道在用完备用块之前需要进行多少次重新分配。

属性 169 的 RAW 值是已使用百分比 (31)。如果我们知道重新分配了 17 个,这等于 31%,那么应该还有 37 个备用块?

在此处输入图片描述

当 SSD 损坏时,它们将变为只读而不是不可读,因此数据丢失的风险很低,至少我希望如此。

我认为这取决于情况。这不是一般规则,而是一个固件“决定”,如果发生某些灾难性的突发故障,它永远无法做出决定。换句话说,SSD 坏了,同时不允许您保存数据,所以这不是我所依赖的东西。

我曾经看过一段有关 SSD 的有趣 Intel 视频,消费者级 SSD 和企业级 SSD 之间的主要区别可能主要在于固件策略,而不是不同的硬件。企业级型号的策略更为严格,因此固件接受的错误和异常更少,因此固件可能会决定“破坏”SSD(英特尔工程师的话),而消费者型号则继续运行。

编辑:找到了视频。它涉及不同的主题(静默错误),但它说明了我的观点,即这些事情是固件策略:您愿意承受的错误数量以及针对消费者和企业模型的不同策略。他在 22:00 左右讨论了其中的一些内容。https://www.youtube.com/watch?v=fqzv2YXMFRs

相关内容