Ubuntu 12.04崩溃分析 – 崩溃时所有打开文件的奇怪二进制数据

几个小时前,我们在Ubuntu 12.04上遇到系统崩溃。 我们检查了所有的日志文件,没有任何可疑的责任。

最后logging的东西是一些dovecot活动。 没有内核恐慌消息。 没有。

这是一个新的服务器(新硬件),我们正在testing之前,生产。 而且由于这是新的难题,我怀疑这个问题可能是由于一些硬件故障造成的。

我们已经运行memtester没有检测到问题。 我会很高兴听到其他硬件testing工具(机器有SSD)。

无论如何,我想问你的是另一回事。 奇怪的是,在发生崩溃的每一个打开的文件中,我们发现下一个符号序列被写入它们:“@ ^ @ ^ @ ^ @ ^ @ ^ @ ^ @ …”。

例如,在syslog日志文件中,我们得到:

Apr 16 15:53:56 odyssey dovecot: pop3-login: Aborted login (auth failed, 1 attempts): user=<info>, method=PLAIN, rip=46.29.255.73, lip=5.9.58.177 ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^ [these continues for about 1000 chars...] ^@^@^@^@Apr 16 15:55:12 odyssey kernel: imklog 5.8.6, log source = /proc/kmsg started. 

我们在所有打开的文件中都得到了这些符号。 这些包括:syslog,mail.log,kern.log,…但也有一些由脚本输出的日志运行在用户帐户(而不是根)CRONs。

那么,有什么想法为什么所有打开的文件在碰撞期间都会写入这些字符? 这是非常糟糕的,因为崩溃损坏了很多文件(我们甚至不知道哪些可能会受到影响)。 我们怀疑所有打开的文件(在写入模式下)在崩溃的时候插入了所有这些符号。 这是为什么?

顺便说一句(如果有帮助),系统在崩溃后自动重启,但是Apache没有启动。 / var / apache2 / * log中没有logging为什么apache没有启动。 运行“服务apache2启动”后,开始没有问题。 另外,我们手动重新启动机器,Apache也重启。 但事故发生后并没有开始,也没有报告错误。

多谢你们!