ubuntu postfix时区更改

JuL*_*uLy 3 ubuntu postfix-mta

我遇到了这个奇怪的问题,我尝试了整整一个下午用谷歌发现的所有方法来解决这个问题,但直到现在,似乎没有任何工作.

我的ubuntu服务器(10.04 LTS)时区是欧洲/赫尔辛基,它是正确的(当我运行"date"命令时,结果显示正确的时间).但我的后缀似乎仍然使用UTC时区,因为/var/log/mail.log中的所有时间都比我当前时间提前3小时.

我还将/ etc/localtime复制到/ var/spool/postfix/etc/localtime,但没有任何帮助.(cp/usr/share/zoneinfo/Europe/Helsinki/var/spool/postfix/etc/localtim也不起作用).

我也尝试运行dpkg-reconfigure tzdata,也不行,系统时间总是正确的,但只有mail.log出错了.

有人能给我一些建议吗?

*我每次尝试进行一些更改时都重新启动了postfix.

小智 7

更改时区后,您应该使用以下命令重新启动 syslogd:

 sudo service rsyslog restart
Run Code Online (Sandbox Code Playgroud)

因为postfix通常使用syslogd进行日志记录。


ewa*_*all 5

将时区(/ etc/localtime)复制到Postfix的chroot应该可以解决问题,但有几个假设:

  1. 您的/ etc/timezone文件也正确设置了吗?它应该只包含该行Europe/Helsink.(请注意,您可以使用该命令正确设置所有时区内容sudo dpkg-reconfigure tzdata.)

  2. 如果Postfix使用syslogd进行日志记录,则可能是以UTC记录日志的内容.您可以考虑更改为支持多个时区的syslogd-ng(或类似).

  3. 你确定/ var/spool/postfix是Postfix使用的chroot吗?如果那不是你的Postfix jail的根,那么可能不会有所有其他的配置文件.你可以在master.cf文件中查找chroot选项,或者这是另一种检查方法.在任何情况下,您希望Postfix使用的etc文件夹中的/ etc/localtime文件.

  4. 为了以防万一,请确保它是您正在复制的"真实"时区文件,而不是符号链接(来自ln -s targetfilename linkfilename).您可以使用该命令file /etc/localtime进行测试; 如果它告诉你它的时区数据,请继续将其复制到Postfix的chroot; 如果它告诉你它是符号链接,那么你想要复制原文/usr/share/zoneinfo/Europe/Helsinki.