Почему postfix копирует /etc/resolv.conf в свой chroot слишком рано, вызывая сбои DNS?

Вы можете просто объединить две команды с помощью && :

cd ..
mv directory.1/file.2 another.directory && rm -r directory.1 &
2
12.02.2018, 13:02
2 ответа

В Ubuntu Zesty будет работать следующее:

Это исправление, вероятно, потребуется выполнить после любого обновления до postfix. Postscript дает сбой после перезагрузки, потому что он не ждет восстановления сети. Это приводит к тому, что он пропускает записи в /etc/resolv.conf. Предполагается скопировать их в /var/spool/postfix/etc/resolv.conf

Измените и/или добавьте в блоки [Unit] этих файлов systemd следующее:

/lib/systemd/system/postfix@.service
/lib/systemd/system/postfix.service

Добавьте или измените:

After=network-online.target

После внесения изменений в службу перезагрузите systemctl:

systemctl daemon-reload

reboot

Примечание. Действительно важным является файл postfix@.service

.
2
27.01.2020, 22:04

Помещение скрипта в /etc/dhcp/dhclient -exit -hooks.d/ на моей малине с jessie 8.0 ничего не дало. Даже сделать его исполняемым не помогло. Кажется, эти скрипты не запускаются.
Для меня эта проблема является еще одним плохим примером сложности, связанной с systemd, менеджером сети -и resolvconf.
Добавление строки в /etc/rc.local тоже не помогло.
Я обнаружил, что в моей системе /etc/rc.local запускается 18 секунд! перед обновлением /etc/resolv.conf.
Поскольку малина находится в локальной сети, я отключил механизм resolvconf, сделав /etc/resolv.conf неизменяемым, но даже это не помогло.
/var/spool/postfix/etc/resolv.conf теперь имеет правильные записи, но postfix по-прежнему не работает должным образом, а записи висят в очереди mqueue, говоря: «(Имя хоста или домена не найдено. Ошибка службы имен для name=....com type=MX :Хост не найден, попробуйте еще раз )"
Я попытался выполнить пакетный перезапуск postfix с задержкой в ​​30 секунд со следующей строкой в ​​/etc/rc.local( sleep 30 ; service postfix restart ) &
Увы, это тоже не сработало.
Но если я войду в систему и вручную перезапущу postfix, будет отправлена ​​почта.
Поэтому я изменил запись на
( sleep 30 ; /etc/init/postfix stop ; sleep 5 ; /etc/init/postfix start ) &
который, наконец, решил проблему для меня.

-1
27.01.2020, 22:04

Теги

Похожие вопросы