树莓派目前支持使用固态硬盘SSD启动,在固态硬盘刚购入,或者使用一段时间后,需要查看下固态硬盘的SMART信息,从而掌握固态硬盘的寿命,以下是查看方法和硬盘SMART信息解读 。
一、SMART
SMART 是 Self-Monitoring, Analysis and Reporting Technology 的缩写,即自监测、分析和报告技术。它是一种状态检测和预警的规范,现在的大多数硬盘都配备此技术。通过硬盘内部的传感器和自检机制,记录硬盘的运行状态中的各类数值。
通过 SMART 我们可以评估硬盘的寿命和健康状态。
二、Smartmontools
Smartmontools 是一个开源的硬盘 SMART 查看和监控工具,它对设备类型的支持相当广泛,包括 ATA/SATA、SCSI/SAS 和 NVMe。甚至对 SCSI、NAS 和 USB 设备也有一定程度的支持。
在树莓派中,首先查看固态硬盘分区信息:
sudo lsblk -f
然后通过 smartctl
命令查看固态硬盘的 SMART 信息:
sudo smartctl -a /dev/nvme0n1
其中的/dev/nvme0n1
是自己电脑或树莓派上的固态硬盘分区。
三、固态硬盘信息
树莓派上读出来的固态硬盘信息一般是这样的,我的是128G 的固态硬盘(M.2 NVMe SSD NE 2242):
li@raspberrypi:~ $ sudo smartctl -a /dev/nvme0n1
smartctl 7.3 2022-02-28 r5338 [aarch64-linux-6.6.51+rpt-rpi-2712] (local build)
Copyright (C) 2002-22, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Number: NE-128 2242
Serial Number: 0022034006509
Firmware Version: SN10726
PCI Vendor/Subsystem ID: 0x1e4b
IEEE OUI Identifier: 0x000000
Total NVM Capacity: 128,035,676,160 [128 GB]
Unallocated NVM Capacity: 0
Controller ID: 0
NVMe Version: 1.4
Number of Namespaces: 1
Namespace 1 Size/Capacity: 128,035,676,160 [128 GB]
Namespace 1 Formatted LBA Size: 512
Namespace 1 IEEE EUI-64: 000000 2034006509
Local Time is: Wed Dec 4 09:51:03 2024 CST
Firmware Updates (0x1a): 5 Slots, no Reset required
Optional Admin Commands (0x0017): Security Format Frmw_DL Self_Test
Optional NVM Commands (0x001f): Comp Wr_Unc DS_Mngmt Wr_Zero Sav/Sel_Feat
Log Page Attributes (0x02): Cmd_Eff_Lg
Maximum Data Transfer Size: 128 Pages
Warning Comp. Temp. Threshold: 90 Celsius
Critical Comp. Temp. Threshold: 95 Celsius
Supported Power States
St Op Max Active Idle RL RT WL WT Ent_Lat Ex_Lat
0 + 6.50W - - 0 0 0 0 0 0
1 + 5.80W - - 1 1 1 1 0 0
2 + 3.60W - - 2 2 2 2 0 0
3 - 0.7460W - - 3 3 3 3 5000 10000
4 - 0.7260W - - 4 4 4 4 8000 45000
Supported LBA Sizes (NSID 0x1)
Id Fmt Data Metadt Rel_Perf
0 + 512 0 0
=== START OF SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
SMART/Health Information (NVMe Log 0x02)
Critical Warning: 0x00
Temperature: 39 Celsius
Available Spare: 100%
Available Spare Threshold: 1%
Percentage Used: 0%
Data Units Read: 266,378 [136 GB]
Data Units Written: 504,834 [258 GB]
Host Read Commands: 3,000,878
Host Write Commands: 9,104,897
Controller Busy Time: 55
Power Cycles: 11
Power On Hours: 311
Unsafe Shutdowns: 9
Media and Data Integrity Errors: 0
Error Information Log Entries: 1
Warning Comp. Temperature Time: 0
Critical Comp. Temperature Time: 0
Temperature Sensor 1: 39 Celsius
Temperature Sensor 2: 43 Celsius
Error Information (NVMe Log 0x01, 16 of 64 entries)
No Errors Logged
四、固态硬盘关键指标信息解读
Critical Warning重要警告:
这一项需要观察“原始值”一列的数据,正常情况下应为0。如果显示为1代表当前硬盘处于过热状态;显示为2代表闪存出现严重错误导致可靠性降级,该考虑更换了;显示为3代表闪存已经进入只读状态(寿命用尽,锁盘以保护用户数据)。还有一种状态4是只有企业级固态硬盘才具备的,代表增强型断电保护功能失效(通常是因为电池/电容故障).
Composite Temperature综合温度:
这一项的单位是热力学温度开尔文,减去273之后就是我们常用的摄氏度了。不同固态硬盘对正常温度的定义是不一样的,通常只有厂商自己的工具箱软件才能明确。例如东芝RC500的正常温度是在79度以下,达到79度后SSD Utility会报告高磁盘温度。
Available Spare可用冗余空间
这一项显示的是当前可用于替换坏块的闪存备用块占出厂时总数的百分比,是一项非常重要的健康度指标。配备东芝BiCS闪存的NVMe固态硬盘可以在使用很久后依然保持100%的状态。
Available Spare Threshold备用空间阈值
与上一项相关,当可用备用空间低于该阈值时就会发出预警,提醒用户闪存剩余寿命不足,该更换新硬盘了。
Percentage Used已使用的耐久度
这一项显示的是已经使用的写入耐久度(百分比),平时我们看到的健康度其实就是100%减去已使用耐久度百分比后的结果。
Data Units Read读取扇区计数
该项数值乘以1000后即为读取的扇区(1扇区=512字节)数量统计。
Data Units Write写入扇区计数
该项数值乘以1000后即为写入的扇区(1扇区=512字节)数量统计。
Host Read Commands读取命令计数
固态硬盘自使用以来累计接收到的读取命令数量统计。
Host Write Commands写入命令计数
固态硬盘自使用以来累计接收到的写入命令数量统计。
Controller Busy Time主控繁忙时间计数
该项统计的是主控忙于处理IO命令的时间总和(单位:分钟)。当IO队列有未完成的命令时,主控即处于“忙”的状态。
Power Cycles通电次数
Power On Hours通电时间
Unsafe Shut downs不安全关机次数(异常断电计数)
非正常断电是威胁固态硬盘的大敌,我们应该尽可能地避免强制关机。
Media and Data Integrity Errors闪存和数据完整性错误
主控检测到未恢复的数据完整性错误的次数。当有纠错引擎无法校正的ECC、CRC校验失败或者LBA标签不匹配错误发生时,该数值会增加。这一项数值如果不为零,代表固态硬盘工作已经不稳定。
Number of Error Information Log Entries错误日志条目计数
Warning Composite Temperature Time过热警告时间
Critical Composite Temerature Time过热临界温度时间
五、固态硬盘寿命估计
Percentage Used是显示固态硬盘寿命的重要指标,应重点关注该指标,过大时则应该及时更换固态硬盘。
原创文章,转载请注明: 转载自科技爱好者博客
本文链接地址: 在 树莓派(Raspberry Pi)上查看固态硬盘 SMART 信息,评估固态硬盘寿命 (https://www.tujing.site/5812)
如果博客对您有帮助,请给我 赞助
没有smartctl工具时,会报故障:“$ sudo smartctl -a /dev/sda
sudo: smartctl: command not found”,可以使用下面这个命令安装:
sudo apt install smartmontools