三星 SSD“Wear_Leveling_Count”含义

三星 SSD“Wear_Leveling_Count”含义

我自己的笔记本电脑和一些服务器上都有三星固态硬盘。

当我做:

smartctl -a /dev/sda | grep 177

我得到了无法理解的结果。以下是一些示例:

# my laptop Samsung SSD 850 EVO 500GB (new)
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
177 Wear_Leveling_Count     0x0013   100   100   000    Pre-fail  Always       -       0

# server 256 GB, SAMSUNG MZ7TE256HMHP-00000
177 Wear_Leveling_Count     0x0013   095   095   000    Pre-fail  Always       -       95

# server 512 GB, SAMSUNG MZ7TE512HMHP-00000 (1 year old)
177 Wear_Leveling_Count     0x0013   099   099   000    Pre-fail  Always       -       99

# server 512 GB, SAMSUNG MZ7TE512HMHP-00000 (suppose to be new)
177 Wear_Leveling_Count     0x0013   099   099   000    Pre-fail  Always       -       99

# server 480 GB, SAMSUNG MZ7KM480HAHP-0E005
177 Wear_Leveling_Count     0x0013   099   099   005    Pre-fail  Always       -       3

# server 240 GB, SAMSUNG MZ7KM240HAGR-0E005
177 Wear_Leveling_Count     0x0013   099   099   005    Pre-fail  Always       -       11

知道如何读吗Wear_Leveling_Count

有些值是最小值,有些值是最大值。

如果考虑“笔记本电脑” Samsung SSD 850 EVO 500GB,它是 0 并且可能会变为 100,然后就会失败。

如果首先考虑“服务器” 256 GB, SAMSUNG MZ7TE256HMHP-00000,它已经处于最大值了吗?它会降到零吗?

答案1

金士顿对此 SMART 属性的描述如下:

平均每个块的擦除/编程周期数。此属性旨在指示即将发生的磨损。标准化公式:100 – (100 * 平均擦除次数 / NAND 最大额定擦除周期数)

忽略Raw Data这些情况下的(它们可以被制造商操纵以不同的方式工作),并查看Current Value柱子。

此资料来源安南德科技很好地说明了如何使用这个数字:

磨损均衡计数 (WLC) SMART 值为我们提供了所需的所有数据。当前值以百分比表示驱动器的剩余耐用性,这意味着它从 100 开始,并随着驱动器的写入而线性减少。原始 WLC 值计算消耗的 P/E 周期,因此如果在写入驱动器时监视这两个值,我们很快就会找到标准化值下降 1 的位置。

write所有驱动器的速率都在 95 到 100 之间,最终会降到 0。这是对每个块在发生故障之前可以经历多少个、erase等循环的估计rewrite,目前,您的一个驱动器估计的已经使用了其当前预期寿命的 5%。再次强调,这里的关键词是“估计”。

还请注意,您的驱动器可能使用不同的 NAND 技术,因此预期寿命会有所不同。一些 NAND 技术预计每个块可持续约 1000 个 PE 周期,而其他 NAND 技术则可达到 30,000 个。

答案2

SMART 报告我的 Samsung SM951 (AHCI) 128GB 出现了 PREFAILED 情况,在 Linux 中报告为SAMSUNG MZHPV128HDGM-00000 (BXW2500Q)

但就我而言,我认为这是驱动器的固件错误,

  • 因为该total-bytes-written属性报告为 1.1TB,而该驱动器的指定总写入字节数 (TBW) 为 75TB!这可能在(非常)安全方面,因为类似的(MLC NAND)驱动器都达到了这个数字的倍数(600TB)真正的耐力考验
  • wear_level_count警告外,没有报告其他故障前或过时错误或警告,
  • reallocated-sector-count根据该测试,这是一个良好的故障前指标,但它仍然为 0。

因此,我的建议是检查您的驱动器/系统的这些值并以此为基础得出结论。

skdump我更喜欢随附的低级实用程序libatasmart,它与Gnome 磁盘

使用以下命令,替换/dev/sdc块设备的路径:

sudo skdump /dev/sdc

答案3

关于三星 EVO 和 PRO SSD 的简短说明:

smartctl -a /dev/sda

smartctl 6.4 2014-10-07 r4002 [x86_64-linux-4.9.0-0.bpo.6-amd64] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Device Model:     Samsung SSD 860 PRO 1TB
Serial Number:    S42NNF0K000000
LU WWN Device Id: 5 002538 e405145c6
Firmware Version: RVM01B6Q
User Capacity:    1,024,209,543,168 bytes [1.02 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        Not in smartctl database [for details use: -P showall]
ATA Version is:   Unknown(0x09fc) (unknown minor revision code: 0x005e)
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Fri Jan  8 11:53:56 2021 EET
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:  (0x00) Offline data collection activity
                    was never started.
                    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:        (    0) seconds.
Offline data collection
capabilities:            (0x53) SMART execute Offline immediate.
                    Auto Offline data collection on/off support.
                    Suspend Offline collection upon new
                    command.
                    No Offline surface scan supported.
                    Self-test supported.
                    No 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:    (  85) minutes.
SCT capabilities:          (0x003d) SCT Status supported.
                    SCT Error Recovery Control supported.
                    SCT Feature Control supported.
                    SCT Data Table supported.

SMART Attributes Data Structure revision number: 1
Vendor Specific SMART Attributes with Thresholds:
ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
  5 Reallocated_Sector_Ct   0x0033   100   100   010    Pre-fail  Always       -       0
  9 Power_On_Hours          0x0032   097   097   000    Old_age   Always       -       14689
 12 Power_Cycle_Count       0x0032   099   099   000    Old_age   Always       -       122
177 Wear_Leveling_Count     0x0013   098   098   000    Pre-fail  Always       -       25
179 Used_Rsvd_Blk_Cnt_Tot   0x0013   100   100   010    Pre-fail  Always       -       0
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   100   100   010    Pre-fail  Always       -       0
187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0
190 Airflow_Temperature_Cel 0x0032   067   056   000    Old_age   Always       -       33
195 Hardware_ECC_Recovered  0x001a   200   200   000    Old_age   Always       -       0
199 UDMA_CRC_Error_Count    0x003e   099   099   000    Old_age   Always       -       23
235 Unknown_Attribute       0x0012   099   099   000    Old_age   Always       -       58
241 Total_LBAs_Written      0x0032   099   099   000    Old_age   Always       -       29068641040

寿命指标最有趣的部分是:

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
177 Wear_Leveling_Count     0x0013   098   098   000    Pre-fail  Always       -       25

RAW 值为 25???这是否意味着我的使用寿命已耗费了 25%?

确实没有。请看三星的回复:

SMART 属性 177(磨损均衡计数)

此属性表示介质编程和擦除操作的次数(即块被擦除的次数)。此值与 SSD 的使用寿命直接相关。此属性的原始值显示 P/E Cycles 的总数。

这意味着,在我的特定 SSD 中,VALUE 98 表示仍然剩余 98% 的寿命,但每个块的平均编程/擦除周期为 25 次。

还有一件有趣的事情:

241 Total_LBAs_Written      0x0032   099   099   000    Old_age   Always       -       29068641040

这个尺寸是多少 GB?TB?

很简单,通过 SMART 信息来获取 Sector 大小:

Sector Size:      **512** bytes logical/physical

总写入量(GB 或 TB):

29068641040/2/1024/1024 = 13861 GB / 1024 = 13.536 TB

解释:将 LBA 计数除以 2,因为 1 KB 由 2 个 512B 扇区组成。然后除以 1024 可得到 MB、GB 和 TB。

希望能帮助到你。

答案4

我总是每天安排驱动器映像。有些设备是 Veem,其他设备是 StorageCraft。在大多数情况下,裸机和虚拟机恢复/安装时间不到 5 分钟,我还没有遇到过措手不及的情况。

除此之外,如果您真的想要制定计划,请计划在保修期满后 30 天内更换所有驱动器。

我确实尊重数学,也尊重想要了解如何/何时监控或预测驱动器故障的细节,并且我向所有在技术方面能够解决数字运算问题的人致敬!!

相关内容