rsyslogd 两天前停止写入 /var/log/syslog

rsyslogd 两天前停止写入 /var/log/syslog

似乎 rsyslogd 两天前停止写入我笔记本电脑上的 /var/log/syslog,但我不知道为什么。

从以下情况可以看出:

clh@avignon:/var/log$ ls -lt | head -30
total 12600
drwxr-xr-x 2 root              root    4096 Jan 30 09:53 upstart
-rw-r--r-- 1 root              root  223836 Jan 30 09:37 dpkg.log
-rw-rw-r-- 1 root              utmp  361728 Jan 30 09:20 wtmp
-rw-r--r-- 1 root              root   31376 Jan 30 09:19 Xorg.0.log
-rw-r--r-- 1 root              root  262055 Jan 30 09:19 pm-powersave.log
drwxr-xr-x 2 root              root    4096 Jan 30 09:19 lightdm
-rw-r--r-- 1 root              root    3177 Jan 30 09:18 boot.log
-rw-r----- 1 root              adm    60332 Jan 30 09:18 dmesg
-rw-r--r-- 1 root              root  334169 Jan 30 09:18 udev
-rw-r--r-- 1 root              root   32014 Jan 30 09:16 Xorg.0.log.old
-rw-r----- 1 root              adm    60381 Jan 30 09:07 dmesg.0
drwxr-xr-x 2 root              root    4096 Jan 30 07:54 cups
-rw-r----- 1 messagebus        adm        0 Jan 29 06:39 syslog
-rw-r----- 1 root              adm    16101 Jan 29 06:30 dmesg.1.gz
-rw-r----- 1 messagebus        adm   186869 Jan 28 20:57 kern.log
-rw-r----- 1 messagebus        adm   147391 Jan 28 20:57 syslog.1
-rw-r--r-- 1 root              root    4524 Jan 28 20:33 alternatives.log
-rw-rw-r-- 1 root              utmp 8760000 Jan 28 20:32 lastlog
-rw-r--r-- 1 root              root  960000 Jan 28 20:32 faillog
-rw-r----- 1 root              adm    16029 Jan 28 14:25 dmesg.2.gz
-rw-r----- 1 messagebus        adm    21598 Jan 28 07:31 syslog.2.gz
-rw-r----- 1 root              adm    15926 Jan 28 06:59 dmesg.3.gz
-rw-r----- 1 messagebus        adm    19983 Jan 27 07:55 syslog.3.gz

syslog.1 的最后几行是:

Jan 28 20:55:30 avignon pulseaudio[7825]: [pulseaudio] pid.c: Daemon already running.
Jan 28 20:55:42 avignon goa[8118]: goa-daemon version 3.6.0 starting [main.c:112, main()]
Jan 28 20:55:46 avignon signond[8250]: signondaemon.cpp 345 init Failed to SUID root. Secure storage will not be available. 
Jan 28 20:57:42 avignon gnome-session[7875]: CRITICAL: gsm_manager_set_phase: assertion `GSM_IS_MANAGER (manager)' failed
Jan 28 20:57:42 avignon gnome-session[7875]: Gtk-CRITICAL: gtk_main_quit: assertion `main_loops != NULL' failed
Jan 28 20:57:42 avignon kernel: Kernel logging (proc) stopped.
Jan 28 20:57:42 avignon rsyslogd: [origin software="rsyslogd" swVersion="5.8.6" x-pid="1090" x-info="http://www.rsyslog.com"] exiting on signal 15.

kern.log 的最后几行是:

Jan 28 20:10:44 avignon kernel: [20707.335160] psmouse serio2: Touchpad at isa0060/serio2/input0 lost sync at byte 6
Jan 28 20:10:44 avignon kernel: [20707.369217] psmouse serio2: Touchpad at isa0060/serio2/input0 - driver resynced.
Jan 28 20:57:42 avignon kernel: Kernel logging (proc) stopped.

/etc/rsyslog.d/50-default.conf 的前几行是

#
auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog
#cron.*                         /var/log/cron.log
#daemon.*                       -/var/log/daemon.log
kern.*                          -/var/log/kern.log
#lpr.*                          -/var/log/lpr.log
mail.*                          -/var/log/mail.log
#user.*                         -/var/log/user.log

上述配置文件的日期为2012年3月30日。

我能想到的唯一两件事是某个地方的某些更新破坏了我的日志记录,或者可能是因为我正在尝试 Gnome Shell(在日志记录停止的同时启动)以至于我“做了一些事情”。

非常感谢您的帮助!

答案1

据我所见,您的 50-default.conf 文件与默认值匹配,因此这可能不是问题: http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/quantal/rsyslog/quantal/view/head:/debian/50-default.conf

令人高兴的是,rsyslog 似乎有一个配置检查模式,可以帮助您排除实际发生的问题。从他们的帮助页面:

Rsyslog 3.21.1 及更高版本已增强,支持扩展配置检查。它提供了一个特殊的命令行开关 (-N1),可将其置于“配置验证模式”。在该模式下,它会解释并检查配置文件,但不会启动。此模式可与正在运行的 rsyslogd 实例并行使用。

要启用它,请按如下方式交互运行 rsyslog:

/路径/到/rsyslogd -f /路径/到/配置文件 -N1

您还应该指定您通常提供的其他选项(如 -c3 和其他任何选项)。遇到的任何问题都会报告给 stderr [也称为“您的屏幕”(如果没有重定向)]。

http://www.rsyslog.com/doc/troubleshoot.html

答案2

如上所述,解决方案是在 /etc/rsyslog.d/50-default.conf 文件中注释掉与 /dev/xconsole 相关的行。

以下是相关帖子以及他们如何解决问题:http://www.linuxquestions.org/questions/linux-general-1/log-files-are-empty-messages-syslog-mail-err-930916/

答案3

也许您可以检查 /etc/rsyslog.d/ 中一些配置错误的 *.conf。例如:

:msg, contains, 'xxxxx' /var/log/x.log

改成

:msg, contains "xxxxx" /var/log/x.log

这就是发生在我身上的事情。

相关内容