加入收藏 | 设为首页 | 会员中心 | 我要投稿 安卓应用网 (https://www.0791zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

如何在Linux中收到ECC错误的通知?

发布时间:2020-05-23 16:54:50 所属栏目:Linux 来源:互联网
导读:当配备ECC内存的 Linux机器识别内存故障时,如何收到通知?我对可纠正和无法纠正的错误感兴趣. 如果将消息写入dmesg / syslog,这已经很好了,但我很想知道要查找什么 安装额外的守护进程(如硬盘驱动器的smartmontools)是可以接受的 Nagios / Icinga监控将是另一

当配备ECC内存的 Linux机器识别内存故障时,如何收到通知?我对可纠正和无法纠正的错误感兴趣.

>如果将消息写入dmesg / syslog,这已经很好了,但我很想知道要查找什么
>安装额外的守护进程(如硬盘驱动器的smartmontools)是可以接受的
> Nagios / Icinga监控将是另一种方式
>并非所有要监控的计算机都具有IPMI

感兴趣的系统有Supermicro板(X9SCM-F),关于HP N54L微处理器,我只是好奇,但不要太在意.所有系统都运行Debian或Ubuntu Linux.

解决方法

Linux kernel supports一些芯片组的错误检测和纠正( EDAC)功能.在支持的 ECC系统上,可以通过sysfs访问内存控制器的状态:
/sys/devices/system/edac/mc

该位置下的目录树应与您的硬件相对应,例如:

/sys/devices/system/edac/mc/mc0/csrow2/power
/sys/devices/system/edac/mc/mc0/csrow0/power
/sys/devices/system/edac/mc/mc0/dimm2/power
/sys/devices/system/edac/mc/mc0/dimm0/power
/sys/devices/system/edac/mc/mc1/power
...

根据您的硬件,您可能必须明确加载正确的edac驱动程序,参见:

find /lib/modules/$(uname -r) -name '*edac*'

edac-utils package提供了一个命令行前端和一个用于访问该数据的库,例如:

edac-util -rfull          
mc0:csrow0:mc#0memory#0:CE:0
mc0:csrow2:mc#0memory#2:CE:0
mc0:noinfo:all:UE:0
mc0:noinfo:all:CE:0
mc1:noinfo:all:UE:0
mc1:noinfo:all:CE:0

您可以设置某种定期调用eac-util的cron-job,并将结果提供给监控系统,然后您可以在其中配置一些通知.

除此之外,运行mcelog通常是一个好主意.取决于系统,但不可纠正/可纠正的ECC错误也可能被报告为机器检查异常(MCE).我的意思是,即使由于温度较高而短暂的CPU节流也被报告为MCE.

(编辑:安卓应用网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读