Ubuntu постфикс смена часового пояса - PullRequest
3 голосов
/ 14 июня 2011

Я столкнулся с этой странной проблемой и целый день пытался ее решить всеми методами, найденными в Google, но до сих пор ничего не помогало.

Часовой пояс моего сервера Ubuntu (10.04 LTS) - Европа / Хельсинки, это правильно (когда я запускаю команду «дата», результат показывает правильное время). Но мой постфикс все еще использует часовой пояс 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 -configure tzdata, тоже не работает, системное время всегда корректно, но только mail.log ошибся.

Может ли кто-нибудь дать мне какое-нибудь предложение?

* Я перезапускал postfix каждый раз, когда пытался внести некоторые изменения.

Ответы [ 3 ]

5 голосов
/ 15 июня 2011

Копирование часового пояса (/ etc / localtime) в chroot Postfix должно помочь, но есть пара предположений:

  1. Правильно ли настроен файл / etc / timezone? Вероятно, он должен содержать только строку Europe/Helsink. (Обратите внимание, что вы, вероятно, можете правильно установить все параметры часового пояса с помощью команды sudo dpkg-reconfigure tzdata.)

  2. Если Postfix использует syslogd для ведения журнала, то это может быть тем, что записывает журналы в UTC. Вы можете подумать об изменении на syslogd-ng (или аналогичный), который поддерживает несколько часовых поясов .

  3. Вы уверены, что / var / spool / postfix является chroot, который использует Postfix? Если это не корень вашей тюрьмы Postfix, вероятно, там не будет всех других конфигурационных файлов .; Вы можете найти опцию chroot в файле master.cf , или вот другой способ проверить . В любом случае вам нужен файл / etc / localtime в папке etc, которую использует Postfix.

  4. На всякий случай, убедитесь, что это «реальный» файл часового пояса, в который вы копируете, а не символическая ссылка (с ln -s targetfilename linkfilename). Вы можете использовать команду file /etc/localtime для проверки; если он говорит, что это данные о часовом поясе, скопируйте его в chroot Postfix; если он говорит, что это символическая ссылка, то вы хотите скопировать оригинал /usr/share/zoneinfo/Europe/Helsinki.

0 голосов
/ 13 марта 2019

После изменения часового пояса вы должны перезапустить syslogd с помощью:

 sudo service rsyslog restart

Поскольку postfix обычно использует syslogd для регистрации.

0 голосов
/ 09 февраля 2018

Не совсем Ubuntu, а потому что этот вопрос находится в верхней части результатов поиска: Для меня проблема была в часовом поясе rsyslog. Исправить:

vim /etc/sysconfig/clock 
ZONE="America/New_York"     # or your timezone, of course
systemctl restart rsyslog
#  or
/etc/init.d/rsyslog restart

Затем перезапустите постфикс.

Благодаря этой записи

...