SMART 检查怎么做
SMART 是磁盘自带的健康监测数据,smartctl 负责读取与触发自检。-H 给出总体健康判定,-A 列出各项属性与原始值,其中重分配扇区、待映射扇区、不可纠正错误等与故障强相关。定期巡检加阈值告警,能在盘彻底坏掉之前安排更换。
基本信息
| 所属包 | smartmontools(RPM 系与 DEB 系同包名) |
|---|---|
| 总体状态 | smartctl -H /dev/sdX |
| 属性明细 | smartctl -A /dev/sdX |
| 自检 | smartctl -t short 或 -t long |
| NVMe 盘 | smartctl -a /dev/nvme0 |
典型使用场景
- 阵列掉盘或读写报错时确认盘的健康状态
- 定期巡检:纳入监控脚本按周采集关键属性
- 更换计划:重分配扇区非零时安排替换
- 温度监控:机房散热异常时确认盘温是否超标
- 自检演练:确认盘能否完成读写自检
常用命令
常用命令
dnf install -y smartmontools # 安装工具包,DEB 系用 apt
smartctl -H /dev/sda # 总体健康状态
smartctl -A /dev/sda | grep -Ei 'Reallocated|Pending|Uncorrectable|Power_On|Temperature'
smartctl -a /dev/sda | head -40 # 完整信息
smartctl -t short /dev/sda # 触发短自检
smartctl -l selftest /dev/sda # 查看自检结果
smartctl -a /dev/nvme0 # NVMe 盘用同样思路查看关键属性
| 属性 | 含义 | 处置建议 |
|---|---|---|
| Reallocated_Sector_Ct | 已重分配扇区数 | 非零即列入更换计划 |
| Current_Pending_Sector | 待映射扇区数 | 非零说明写入已受影响 |
| Offline_Uncorrectable | 离线不可纠正错误 | 非零通常意味着坏块 |
| Power_On_Hours | 累计通电时长 | 结合寿命曲线评估更换 |
| Temperature_Celsius | 盘体温度 | 长期偏高加速老化 |
接在 RAID 卡后面的盘需要加接口参数(常见形式是 -d megaraid,N),直接对成员盘做读写类操作会干扰阵列;操作前先确认拓扑再执行。
自检分短检与长检:短检只检查关键区域,消耗时间短;长检会遍历全盘,建议安排在业务低峰执行。
巡检落地
- 写脚本按周采集关键属性
- 把非零的坏块计数接入告警
- 记录每次采集结果以便看趋势
- 更换前后记录序列号与物理位置
- 阵列环境按控制器参数采集