Я использую sendmail версии 8.14.4 в Fedora 15 для отправки электронной почты. Приложение My Rails использует delayed_job для постановки писем в очередь. Сообщения будут стоять в очереди в /var/spool/mqueue
как и ожидалось, но не всегда обрабатываются. Я вижу сообщения, и sendmail определенно работает в фоновом режиме. Перезапуск процесса ничего не дает. Однако когда я выдаю sendmail -q
команда sendmail приступает к работе и начинает отправку. Действительно странно, что такое поведение случается только иногда. В других случаях очередь сообщений увеличивается и доставляется должным образом.
Я пробовал настраивать различные конфигурации sendmail, чтобы сократить время между обработкой очереди (например, добавив define('confMIN_QUEUE_AGE', '0')dnl
к /etc/mail/sendmail.mc
), но, похоже, ничего не помогает. Есть идеи, что может быть основной причиной?
На моей коробке FC15:
ps auxw | fgrep sendmail
root 1803 ... sendmail: accepting connections
smmsp 1812 ... sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue
У вас есть два bg sendmail: первый для входящей почты, второй запускает очередь один раз в час. Вы можете настроить время между запусками, изменив настройки в / etc / sysconfig / sendmail (предпочтительное значение - 15 минут).
Материал sendmail.mc предназначен для других целей (см. Файл README в пакете sendmail-config)
Обратите внимание, что - для стандартной конфигурации sendmail - сообщения попадают в очередь только в том случае, если они не могут быть доставлены сразу (потому что, например, они занесены в серый список, или сервер destinaton не работает, или слишком занят и т. Д.), Поэтому очень часто выполняется очередь обычно не очень помогают.