实际上,我接管了一个使用 postfix 的邮件集群的管理。当我看到不同的日志时,我真的很困惑:
- 其中一个服务器将日志记录到自定义日志文件,但未定义 maillog_file
- 集群中的另一台服务器将所有内容记录到 syslog 文件中
- 第三台服务器不记录任何内容
- 另外两台服务器正确登录
但是所有设置都是正确的,并且没有定义自定义日志文件 - 所以根据我的理解,它应该使用 rsyslog 来记录到、、和mail.log
-mail.info
但那是不正确的。mail.warn
mail.err
我读过一些关于创建 rsyslog 配置文件的内容,以强制将 postfix 记录到这些文件中 - 但我对此并不太感兴趣。
也许有人可以支持我以哪种方式将其恢复/放入默认的 rsyslog 文件中?
答案1
下载 rsyslog 包:
apt-get download rsyslog
然后检查包文件(rsyslog_8.2102.0-2+deb11u1_amd64.deb
就我而言):
dpkg -c rsyslog_8.2102.0-2+deb11u1_amd64.deb
...
-rwxr-xr-x root/root 2864 2022-05-21 01:05 ./etc/init.d/rsyslog
-rw-r--r-- root/root 1974 2022-05-21 01:05 ./etc/rsyslog.conf
drwxr-xr-x root/root 0 2022-05-21 01:05 ./etc/rsyslog.d/
...
您可以提取一个包(如果您愿意的话,还有其他方法可以做到这一点):
mkdir /tmp/1
dpkg-deb -x rsyslog_8.2102.0-2+deb11u1_amd64.deb /tmp/1
现在,临时目录/tmp/1
有 rsyslog 的默认 Debian 配置。您可以将其与当前配置进行比较,以确认它是否已更改:
diff /etc/rsyslog.conf /tmp/1/etc/rsyslog.conf
作为参考,这是我正在检查的包版本中的配置中的邮件部分:
#
# Logging for the mail system. Split it up so that
# it is easy to write scripts to parse these files.
#
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
如果你够勇敢,你就可以重新安装配置文件对于整个包:
apt install --reinstall -o Dpkg::Options::="--force-confask,confnew,confmiss" rsyslog