我已经安装了最新版本的OSSEC (2.8.1) 并且我还启用了电子邮件通知。我收到了大量此类通知,说存在硬件错误和有关 mce 的一些信息:
OSSEC HIDS Notification.
2015 Apr 04 20:09:22
Received From: Bath-Towel->/var/log/syslog
Rule: 1002 fired (level 2) -> "Unknown problem somewhere in the system."
Portion of the log(s):
Apr 4 20:09:21 Bath-Towel kernel: [ 1873.680872] mce: [Hardware Error]: Machine check events logged
--END OF NOTIFICATION
Run Code Online (Sandbox Code Playgroud)
那么这到底是什么意思呢?mce 代表什么?这个明显的硬件错误是我应该担心的吗?
操作系统信息:
Description: Ubuntu 14.10
Release: 14.10
Run Code Online (Sandbox Code Playgroud)
Eri*_*lho 25
甲机器检查异常(MCE)是一种类型的计算机的硬件错误的,当一个计算机的中央处理单元检测到硬件问题时。
您的计算机遇到硬件错误,内核在缓冲区中记录了一个事件。您可以mcelog用来记录和查看机器检查事件。从mcelog联机帮助页:
X86 CPU 将 CPU 检测到的错误报告为机器检查事件 (MCE)。这些可能是 CPU 缓存中检测到的数据损坏、集成内存控制器在主内存中检测到的数据损坏、前端总线或 CPU 互连上的数据传输错误或其他内部错误。可能的原因可能是宇宙辐射、不稳定的电源、冷却问题、硬件损坏、运行的系统不符合规格或运气不好。
大多数错误可以由 CPU 通过内部错误纠正机制纠正。未纠正的错误会导致机器检查异常,这可能会杀死进程或使机器崩溃。少量更正的错误通常不会引起担忧,但大量可以表明未来的失败。
当发生更正或恢复的错误时,x86 内核会将描述 MCE 的记录写入通过 /dev/mcelog 设备可用的内部环形缓冲区。mcelog 从 /dev/mcelog 检索错误,将它们解码为人类可读的格式,并将它们打印在标准输出上或可选地打印到系统日志中。
如果您没有注意到任何崩溃,则错误可能已成功纠正。不过,我建议您安装mcelog以跟踪此类事件:
sudo apt-get install mcelog
Run Code Online (Sandbox Code Playgroud)
事件将被记录到/var/log/mcelog. 您还可以运行:
sudo mcelog --client
Run Code Online (Sandbox Code Playgroud)
查询mcelog守护进程是否有错误。