CE 与 UE 是什么
内存错误按能否纠正分为两类:CE(可纠正错误)通常是单比特翻转,由硬件自动纠正,系统可能继续运行但会记录计数;UE(不可纠正错误)多来自多比特错误,硬件无法还原原始数据,可能直接导致进程崩溃或整机宕机。两类错误的处置节奏完全不同:CE 要看趋势并在达到阈值前安排维护,UE 要立即定位并更换对应内存条。
错误类型对照
| 类型 | 含义 | 典型处置 |
|---|---|---|
| CE | 可纠正错误,通常为单比特 | 记录并观察趋势,按阈值计划更换 |
| UE | 不可纠正错误,多为多比特 | 立即定位并更换对应内存条 |
查看计数
查看计数
edac-util -v | head -40 # 查看各内存通道的 CE 与 UE 计数
dmesg -T | grep -iE 'edac|machine check' | tail -20 # 内核侧错误记录
ipmitool -I lanplus -H 10.0.0.10 -U admin -f /root/.ipmi_pass sel elist | tail -20 # BMC 事件
# 记录采样时间,按周对比增长情况基本信息
| 计数来源 | Linux 内核 EDAC 子系统、系统日志与 BMC 事件日志 |
|---|---|
| 定位粒度 | 按内存通道与内存条位置记录,便于定点更换 |
| 阈值思路 | 按平台厂商建议或内部基线设定,达到即安排更换 |
| 相关关系 | CE 持续增长是 UE 风险的先行指标 |
典型使用场景
- 巡检建线:按周采集 CE 与 UE 计数并做差
- 宕机分析:出现不可纠正错误时定位到具体内存槽位
- 换件作业:按槽位号更换内存,作业后确认计数停止增长
- 容量变更:内存扩容后重新建立计数基线
- 批次反馈:同一批次内存集中出现错误时反馈采购与厂商
CE 持续增长是 UE 的前兆:不要等出现不可纠正错误才安排维护,数据库与虚拟化这类对内存正确性敏感的业务尤其要注意。
常见疑问
- 没有计数说明什么:可能是平台未暴露该接口,改用 BMC 日志与厂商工具查看
- UE 后重启能否继续用:同一位置很可能再次触发,应先定位再换件
- 更换后计数不归零:部分平台的累计计数不会清零,判断要看增量
换件作业完成后要继续观察一个巡检周期:如果同一位置的计数继续增长,说明定位或更换动作需要重新核对,不要急于关闭工单。