ERC 与超时是什么
桌面级 SATA 盘通常没有企业级的错误恢复控制(ERC,希捷称 TLER):遇到坏块时固件会长时间反复重试,而 RAID 卡有自己的命令超时阈值,重试超过阈值卡就认定盘失联并把它踢出阵列。这类「假掉盘」在日志上很像真故障,但换盘未必是唯一解,先确认盘的超时策略是常见的第一反应。
基本信息
| 原理 | 盘固件重试时间超过卡的超时阈值,卡判定盘失联并踢出 |
|---|---|
| 可调对象 | 支持 SCT ERC 的盘可设置读与写超时,单位 0.1 秒 |
| 建议 | RAID 成员位优先使用企业级盘;必要时按卡厂商建议设置 ERC |
| 持久性 | 设置是否跨重启保持与盘固件有关,应纳入验收检查 |
| 权限要求 | root |
典型使用场景
- 阵列频繁出现单盘掉线时的排查
- 用桌面盘搭阵列时降低假掉盘概率
- 新盘验收时确认超时策略符合要求
- 复盘掉盘事件时区分盘体故障与超时判定
- 与控制器事件日志交叉验证掉盘时刻
查看与设置
查看与设置
smartctl -l scterc /dev/sdb # 查看 SCT ERC 当前设置
smartctl -l scterc,70,70 /dev/sdb # 设置读与写超时,单位 0.1 秒
smartctl -l scterc,0,0 /dev/sdb # 恢复默认,即禁用 SCT ERC
smartctl -a /dev/sdb | grep -iE "reallocat|pending|uncorrect" # 确认坏道指标是否在增长取值读法
| 取值 | 含义 | 使用建议 |
|---|---|---|
| scterc,0,0 | 禁用 SCT ERC | 桌面盘默认,RAID 下易触发假掉盘 |
| scterc,70,70 | 读写超时 7 秒 | 常见建议值,需与卡的超时阈值匹配 |
| 输出 disabled | 盘不支持或已关闭 | 评估改用企业级盘 |
| 错误计数增长 | 盘体在实际劣化 | 换盘优先于调参数 |
ERC 设置不是万能药:盘体本身坏道增长仍应更换,ERC 只降低「假掉盘」的概率。
同一台机器混用企业盘与桌面盘时最容易出问题:两类盘的错误恢复行为不同,掉盘表现与日志也不一样,成员盘型号尽量保持一致。