crontab отправляет письма за месяц

11

почтовый сервер Ubuntu 14.04: Postfix

root получает дюжину писем от crontab. Эти письма содержат предупреждения PHP.

  • Я установил причину этих предупреждений.
  • Я исправил все cronjobs, чтобы не отправлять электронные письма (вывод отправлен >/dev/null 2>&1)
  • Я удалил все предыдущие письма

    / Вар / почта / корень

    / Вар / катушка / почты / корень

Но я все еще получаю дюжину писем каждый час. Эти электронные письма происходят от cronjobs, и иногда им почти месяц.

Я не понимаю: откуда приходят эти письма и где они хранятся?

pixeline
источник
2
Как выглядит mailqвыход? Вы уже изучили заголовок письма? Если нет, посмотрите возможные IP-адреса отправителя, адрес электронной почты, сервер и т. Д., Вы также можете опубликовать его.
Diamond
1
Спасибо, я не знал, mailqтак что я погуглил это и обнаружил, что выполнение postsuper -d ALLудалит их всех. Кажется, он удалил 5615 сообщений ... (источник: cyberciti.biz/tips/howto-postfix-flush-mail-queue.html )
pixeline

Ответы:

20

Это недоставленные старые письма в очереди. Вам нужно выяснить и удалить их, если вы хотите избавиться от них.

Вы можете использовать, mailqчтобы проверить и postsuper -d ALLудалить их все сразу.

Некоторые моменты, на которые следует обратить внимание:

  • Всякий раз, когда вы начинаете получать относительно старые электронные письма, вы можете быть уверены, что эти электронные письма были помещены в очередь где-либо (либо на локальном сервере, либо в удаленном режиме) и теперь доставляются.

  • Чтобы увидеть всю очередь для postfix, вы можете использовать: mailqили, postqueue -pи результаты одинаковы. Это может оказаться неэффективным, если в очереди тысячи писем, потому что команды output пытаются сбросить все это сразу. В этом случае вы можете использовать команду, как mailq | more.

  • Если у вас есть достаточно необходимые письма, застрявшие в очереди, вы можете использовать: postfix flushили postfix -fкоторые пытаются очистить очередь, или другими словами, попытаться отправить их немедленно.
  • В ситуации, когда у вас есть много отложенных писем в очереди и вы хотите удалить их исключительно, вы можете использовать postsuper -d ALL deferred.
  • qshapeтакже очень полезная команда при изучении mailq. Пожалуйста, проверьте постфиксный анализ узких мест .
ромб
источник
4

Это похоже на сообщения, которые были поставлены в очередь и которые теперь доставляются. Если эти сообщения исходят от вашего собственного сервера, они хранятся ниже /var/spool/postfixв очереди исходящей почты, и команда sudo showqили sudo postqueue -pдолжна перечислить все оставшиеся недоставленные сообщения, все еще находящиеся в очереди.

/ var / spool / mail / root - это почтовый ящик по умолчанию, который содержит почту, которая уже доставлена ​​в конечный пункт назначения; удаление сообщений оттуда не помешает прибытию новых сообщений :)

Эти вопросы и ответы могут быть полезны для очистки очереди

HBruijn
источник