Ubuntu服务器挂在系统日志和其他文件中的ascii NUL字符(^ @ ^ @ ^ @ …)

我们偶尔遇到了Ubuntu 16.04 LTS(kernel 4.4.0-34-generic),我们想知道是否有人有一些线索如何做到这一点。

日志看起来像这样:

Aug 24 10:02:04 Ubuntu-1404-trusty-64-minimal kernel: [ 2046.519099] perf interrupt took too long (2505 > 2500), lowering kernel.perf_event_max_sample_rate to 50000 Aug 24 10:03:19 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 43 of user ubuntu. Aug 24 10:06:21 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 44 of user ubuntu. Aug 24 10:06:22 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 45 of user ubuntu. Aug 24 10:08:14 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 46 of user ubuntu. Aug 24 10:17:01 Ubuntu-1404-trusty-64-minimal CRON[150011]: (root) CMD ( cd / && run-parts --report /etc/cron.hourly) Aug 24 10:20:11 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 48 of user ubuntu. Aug 24 10:26:28 Ubuntu-1404-trusty-64-minimal systemd[1]: Started Session 49 of user ubuntu. ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@ 

只有装有SSD磁盘的机器才会出现此问题。

内存和磁盘被检查,100%正常。

这个问题发生在Ubuntu 16.04上。

Ubuntu 14.04 LTS不会遇到这个问题。

所以这绝对是一些软件bug。 这里的问题是:可以采取什么行动来解决这个问题? 我们应该启用哪些日志/debugging来达到这个目的?

你正在运行什么文件系统? logging数据还是仅仅是元数据? 可能是日志文件大小(元数据)被扩展,并且更改被logging,但日志内容(数据)尚未写入。 如果服务器然后崩溃或重新启动元数据从日志重播,但没有数据要恢复,以显示空(零)的内容。 你在SSD上使用TRIM吗? 这会增加零字节的可能性(^ @)