Назад | Перейти на главную страницу

Postfix запускается только после «systemctl daemon-reload»

Сегодня я обновил Postfix, и все работало нормально, пока я не решил позволить серверу перезагрузиться, просто чтобы посмотреть, все ли восстановится.

Все прошло нормально, но похоже, что systemd "игнорирует" запуск Postfix:

Oct  7 22:59:25 [REDACTED] systemd[1]: Stopped Postfix Mail Transport Agent.
Oct  7 22:59:25 [REDACTED] systemd[1]: Stopping Postfix Mail Transport Agent...
Oct  7 22:59:25 [REDACTED] systemd[1]: Starting Postfix Mail Transport Agent...
Oct  7 22:59:25 [REDACTED] systemd[1]: Started Postfix Mail Transport Agent.

Как видите, это показывает ничего о запуске Postfix который должен быть таким:

postfix: Postfix is running with backwards-compatible default settings
postfix: See http://www.postfix.org/COMPATIBILITY_README.html for details
postfix: To disable backwards compatibility use "postconf compatibility_level=2" and "postfix reload"
postfix/postfix-script: starting the Postfix mail system

Когда я печатаю

service postfix start

процесс запуска идет слишком быстро, и просмотр списка процессов с

ps -ef

не перечисляет какие-либо службы Postfix, такие как pickup, tlsmgr и т. д.

Теперь, чтобы исправить это, я обнаружил, что мне просто нужно перезагрузить systemd с помощью

systemctl daemon-reload

Когда используешь

service postfix start

systemd выполняет свою работу, как и должно быть:

Oct  7 23:00:08 [REDACTED] systemd[1]: Reloading.
Oct  7 23:00:08 [REDACTED] systemd[1]: apt-daily-upgrade.timer: Adding 15min 23.517714s random time.
Oct  7 23:00:08 [REDACTED] systemd[1]: apt-daily.timer: Adding 3h 21min 57.996507s random time.


Oct  7 23:00:28 [REDACTED] systemd[1]: Created slice system-postfix.slice.
Oct  7 23:00:28 [REDACTED] systemd[1]: Starting Postfix Mail Transport Agent (instance -)...
Oct  7 23:00:29 [REDACTED] postfix[1233]: Postfix is running with backwards-compatible default settings
Oct  7 23:00:29 [REDACTED] postfix[1233]: See http://www.postfix.org/COMPATIBILITY_README.html for details
Oct  7 23:00:29 [REDACTED] postfix[1233]: To disable backwards compatibility use "postconf compatibility_level=2" and "postfix reload"
Oct  7 23:00:30 [REDACTED] postfix/postfix-script[1333]: starting the Postfix mail system
Oct  7 23:00:30 [REDACTED] postfix/master[1335]: daemon started -- version 3.1.6, configuration /etc/postfix
Oct  7 23:00:30 [REDACTED] systemd[1]: Started Postfix Mail Transport Agent (instance -).

Когда я перезагружаюсь, мне нужно снова перезагрузить systemd, чтобы Postfix работал с помощью служебной команды. Это очень странное поведение, и я не нашел на него ответов в Интернете.

Системные характеристики:

ЦПУ: Intel (R) Xeon (R) CPU E5-2670 v3 @ 2,30 ГГц
Объем памяти: 12 ГБ
SSD: 240 ГБ
ОПЕРАЦИОННЫЕ СИСТЕМЫ: Debian 9 Stretch (64-бит)
Все пакеты обновлены.
Виртуализирован с помощью KVM.

postfix.service

[Unit]
Description=Postfix Mail Transport Agent
Conflicts=sendmail.service exim4.service
ConditionPathExists=/etc/postfix/main.cf

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/true
ExecReload=/bin/true

[Install]
WantedBy=multi-user.target

постфикс @ .service

[Unit]
Description=Postfix Mail Transport Agent (instance %i)
Documentation=man:postfix(1)
PartOf=postfix.service
Before=postfix.service
ReloadPropagatedFrom=postfix.service
After=network-online.target nss-lookup.target
Wants=network-online.target

[Service]
Type=forking
GuessMainPID=no
ExecStartPre=/usr/lib/postfix/configure-instance.sh %i
ExecStart=/usr/sbin/postmulti -i %i -p start
ExecStop=/usr/sbin/postmulti -i %i -p stop
ExecReload=/usr/sbin/postmulti -i %i -p reload

[Install]
WantedBy=multi-user.target

Я пытался исправить это с помощью

systemctl enable postfix.service

но это тоже не сработало.

Спасибо за вашу помощь!

РЕДАКТИРОВАТЬ: Ладно, это очень странно: «сетевая» служба не может «поднять сетевые интерфейсы». Но когда я бегу ifconfig интерфейсы IPv4 и IPv6 работают правильно.

Okt 10 20:48:43 [REDACTED] ifup[423]: ifup: failed to bring up eth0
Okt 10 20:48:43 [REDACTED] systemd[1]: networking.service: Main process exited, code=exited, status=1/FAILURE
Okt 10 20:48:43 [REDACTED] systemd[1]: Failed to start Raise network interfaces.
Okt 10 20:48:43 [REDACTED] systemd[1]: networking.service: Unit entered failed state.
Okt 10 20:48:43 [REDACTED] systemd[1]: networking.service: Failed with result 'exit-code'.

Я прикоснулся к своему interfaces только один раз, назначив им IP 14 месяцев назад.

Хорошо, наконец-то мне помогла эта простая команда:

systemctl enable postfix@-

После перезагрузки все запускается нормально.

У меня та же проблема. Кажется, это ошибка после обновления с stretch 9.1 до stretch 9.2: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=877992

Вы пытались переустановить postfix как там описано? Это не помогло моей системе, но, возможно, вам повезло больше.

Ваш postfix привязываться только к определенным IP-адресам ( inet_interfaces вариант)? Если да, то имеется ряд сообщений об ошибках, связанных с ошибкой запуска - см. 882141 и 887992 (так как упомянутый по Барит).