如何及时测试U.2/M.2/SSD磁盘健康度
值得注意的是,SSD如果过了阵列卡,必须将盘直通。如果不直通你只会看到阵列卡的信息
一旦做了硬件阵列 smartctl就查看不到 软阵列是可以的。
我使用我的一台宿主机作为样例
- lsblk 查看磁盘信息
[root@localhost ~]# fdisk -l
Disk /dev/nvme0n1:1.8 TiB,2000398934016 字节,3907029168 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
磁盘标识符:2E5EEF48-B6C3-4F94-B51A-C4DA2493D3D8
设备 起点 末尾 扇区 大小 类型
/dev/nvme0n1p1 2048 2099199 2097152 1G EFI 系统
/dev/nvme0n1p2 2099200 4196351 2097152 1G Linux 文件系统
/dev/nvme0n1p3 4196352 3907028991 3902832640 1.8T Linux LVM
Disk /dev/nvme1n1:3.7 TiB,4000787030016 字节,7814037168 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
Disk /dev/mapper/cs-root:1.8 TiB,1998246117376 字节,3902824448 个扇区
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
我们可以查看到两块nvme磁盘 一块是/dev/nvme0n1 一块是/dev/nvme1n1
2.smart工具安装
此处用centos操作系统为示例
yum -y install smartmontools
如果提示smartmontools包未找到 请运行yum -y install epel-release 安装EPEL系统库
3.安装完毕 我们挑一块盘查看
smartctl -a /dev/nvme0n1 后面的 /dev/nvme0n1 可以修改成/dev/nvme1n1 等等卷标
值得注意的是 如果你看到了/dev/nvme1n1p1 类似的盘符 直接检测/dev/nvme1n1即可 p1是磁盘分区标识
4.查看分析结果
此处我通过注释的方式解释各处表达的信息
[root@localhost ~]# smartctl -a /dev/nvme0n1
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-4.18.0-553.6.1.el8.x86_64] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Number: INTEL SSDPE2KX020T8 #这个位置可以查看到磁盘的型号
Serial Number: PHLJ151401572P0BGN
Firmware Version: VDV10182
PCI Vendor/Subsystem ID: 0x8086
IEEE OUI Identifier: 0x5cd2e4
Total NVM Capacity: 2,000,398,934,016 [2.00 TB] #容量
Unallocated NVM Capacity: 0
Controller ID: 0
Number of Namespaces: 128
Namespace 1 Size/Capacity: 2,000,398,934,016 [2.00 TB]
Namespace 1 Formatted LBA Size: 512
Namespace 1 IEEE EUI-64: 5cd2e4 81ab240100
Local Time is: Fri Oct 10 19:02:06 2025 CST
Firmware Updates (0x18): 4 Slots, no Reset required
Optional Admin Commands (0x000e): Format Frmw_DL NS_Mngmt
Optional NVM Commands (0x0006): Wr_Unc DS_Mngmt
Maximum Data Transfer Size: 32 Pages
Warning Comp. Temp. Threshold: 70 Celsius #磁盘设置的告警温度
Critical Comp. Temp. Threshold: 80 Celsius #这是磁盘不可容忍的温度 这时磁盘会进入写保护的状态
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 14.00W - - 0 0 0 0 0 0
Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 + 512 0 2
1 - 4096 0 0
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED #此处是系统的smart进程对其的判断 PASSED代表这块盘还能转(不代表会不会冒烟)
如果没看到这个PASSED 显示待检测 你可以运行 smartctl -H 盘符
SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 33 Celsius #磁盘目前的温度
Available Spare: 100%
这是硬盘的“备用块”百分比。当闪存单元损坏时,主控会从备用区域拿好的单元来替换它。100% 表示尚未有任何闪存单元损坏到需要被替换,或者替换的数量微不足道。只要这个值不低于下面的阈值,就是健康的。
Available Spare Threshold: 10%
这是触发健康警告的临界值。当 Available Spare 低于 10% 时,健康状态可能会变为 FAILED。目前 100% 远高于此阈值,非常安全。
Percentage Used: 18% #此处是磁盘已经使用的健康度 用100-18=82% 是通常说的磁盘健康度
Data Units Read: 360,250,280 [184 TB] #磁盘历史读取数据
Data Units Written: 2,368,821,789 [1.21 PB] #磁盘历史写入数据
Host Read Commands: 13,668,212,333
Host Write Commands: 15,803,018,671
Controller Busy Time: 7,463
Power Cycles: 147
Power On Hours: 15,270 #磁盘已经干了多久的苦力
Unsafe Shutdowns: 112
Media and Data Integrity Errors: 0 #这两项需要非常注意查看 这里不是0的话也不安全
Error Information Log Entries: 0 #这是常说的0E 如果这里不是0 盘基本可以报废了
Warning Comp. Temperature Time: 0
Critical Comp. Temperature Time: 0
Error Information (NVMe Log 0x01, max 64 entries)
No Errors Logged #没有告警。如果有告警也不用慌张 一般不是啥大问题
你的母鸡 还安全吗?