系统日志中的 ^@^@ 字符

use*_*605 16 syslog

当我的机器死机时,我在 syslog 中观察到以下奇怪的字符 ^@。

然后我必须硬启动我的机器。

任何想法可能有什么问题?

Oct 12 12:20:52 nanak-P570WM anacron[1074]: Normal exit (1 job run)
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@

Oct 12 12:24:28 nanak-P570WM kernel: imklog 5.8.11, log source = /proc/kmsg started.
Oct 12 12:24:28 nanak-P570WM rsyslogd: [origin software="rsyslogd" swVersion="5.8.11" x-pid="543" x-info="http://www.rsyslog.com"] start
Run Code Online (Sandbox Code Playgroud)

Jde*_*eBP 15

问题在于,在您的机器重置时,日志文件的数据尚未从内存(内核的磁盘缓存)写入磁盘,但记录其当前大小的元数据. 所以你最终得到一个日志文件,它有几个零字节的磁盘块,填充文件中从空闲空间分配但实际上没有写入的部分,然后是从下一个引导程序开始写入的新日志数据.


poo*_*lie 4

这些是 ascii NUL 字符,又名 \0。它们可能是内存损坏或某些软件错误的迹象。我会运行 memcheck。