Работа с очередью сообщений в Postfix: различия между версиями
imported>Vix (Новая страница: «'''Посмотреть очередь''' mailq Принудительно запустить отправку из очереди mailq -q или: postqueue...») |
imported>Vix Нет описания правки |
||
Строка 1: | Строка 1: | ||
'''Посмотреть очередь''' | '''Посмотреть очередь''' | ||
mailq | mailq | ||
Принудительно запустить отправку из очереди | '''Принудительно запустить отправку из очереди''' | ||
mailq -q | mailq -q | ||
или: | или: | ||
Строка 8: | Строка 8: | ||
'''Очистить очередь''' | '''Очистить очередь''' | ||
Удалить все сообщения: | '''Удалить все сообщения:''' | ||
postsuper -d ALL | postsuper -d ALL | ||
Удалить определенное письмо из очереди: | '''Удалить определенное письмо из очереди:''' | ||
postsuper -d <идентификатор письма> | postsuper -d <идентификатор письма> | ||
Строка 21: | Строка 21: | ||
* в данном примере в очереди находится 18 сообщений общим объемом 23 Кбайт.<br> | * в данном примере в очереди находится 18 сообщений общим объемом 23 Кбайт.<br> | ||
Также, очередь можно посмотреть командами: | '''Также, очередь можно посмотреть командами:''' | ||
find /var/spool/postfix/deferred -type f | wc -l | find /var/spool/postfix/deferred -type f | wc -l | ||
Строка 31: | Строка 31: | ||
* данные каталоги являются местом, где временно хранятся письма очереди.<br> | * данные каталоги являются местом, где временно хранятся письма очереди.<br> | ||
Перезапустить очередь | '''Перезапустить очередь''' | ||
postsuper -r ALL | postsuper -r ALL | ||
''' | |||
Если не помогло, поочередно: | Если не помогло, поочередно:''' | ||
postfix stop | postfix stop | ||
Строка 41: | Строка 41: | ||
postfix start | postfix start | ||
'''Настройка очереди'''<br> | '''Настройка очереди:'''<br> | ||
Задать периодичность повторной отправки сообщений: | '''Задать периодичность повторной отправки сообщений:''' | ||
postconf -e "queue_run_delay = 5m" | postconf -e "queue_run_delay = 5m" | ||
Строка 49: | Строка 49: | ||
postconf -e "minimal_backoff_time = 10m" | postconf -e "minimal_backoff_time = 10m" | ||
Задать максимальное время для отправки сообщений, которые не были отправлены по причине временных неисправностей: | '''Задать максимальное время для отправки сообщений, которые не были отправлены по причине временных неисправностей:''' | ||
postconf -e "maximal_backoff_time = 15m" | postconf -e "maximal_backoff_time = 15m" | ||
Выставить время жизни для сообщения в очереди: | '''Выставить время жизни для сообщения в очереди:''' | ||
postconf -e "maximal_queue_lifetime = 1d" | postconf -e "maximal_queue_lifetime = 1d" | ||
После внесения изменений необходимо перезапустить postfix: | '''После внесения изменений необходимо перезапустить postfix''': | ||
service postfix restart || systemctl restart postfix | service postfix restart || systemctl restart postfix | ||
Информация о конкретном сообщении | '''Информация о конкретном сообщении''' | ||
postcat -q <идентификатор> | postcat -q <идентификатор> | ||
Строка 66: | Строка 66: | ||
<hr> | <hr> | ||
* [https://www.dmosk.ru/miniinstruktions.php?mini=postfix-queue Работа с очередью сообщений в Postfix] | * [https://www.dmosk.ru/miniinstruktions.php?mini=postfix-queue Работа с очередью сообщений в Postfix] | ||
* [https://linux-notes.org/udalit-ochistit-sbrosit-ochered-v-postfix/ Удалить/Очистить/Сбросить очередь в postfix] |
Версия от 05:29, 30 марта 2019
Посмотреть очередь
mailq
Принудительно запустить отправку из очереди
mailq -q
или:
postqueue -f
Очистить очередь
Удалить все сообщения:
postsuper -d ALL
Удалить определенное письмо из очереди:
postsuper -d <идентификатор письма>
- идентификатор письма можно увидеть командой mailq.
Количество писем в очереди
Команда mailq в конце выдает общее количество сообщений в очереди, например:
-- 23 Kbytes in 18 Requests.
- в данном примере в очереди находится 18 сообщений общим объемом 23 Кбайт.
Также, очередь можно посмотреть командами:
find /var/spool/postfix/deferred -type f | wc -l
find /var/spool/postfix/active -type f | wc -l
find /var/spool/postfix/incoming -type f | wc -l
find /var/spool/postfix/defer -type f | wc -l
- данные каталоги являются местом, где временно хранятся письма очереди.
Перезапустить очередь
postsuper -r ALL
Если не помогло, поочередно:
postfix stop
postsuper -r ALL
postfix start
Настройка очереди:
Задать периодичность повторной отправки сообщений:
postconf -e "queue_run_delay = 5m"
Задать время, на которое будет отложена отправка сообщений, которые не были отправлены по причине временных
неисправностей (например, принимающий сервер не отвечает или просит повторить запрос позже):
postconf -e "minimal_backoff_time = 10m"
Задать максимальное время для отправки сообщений, которые не были отправлены по причине временных неисправностей:
postconf -e "maximal_backoff_time = 15m"
Выставить время жизни для сообщения в очереди:
postconf -e "maximal_queue_lifetime = 1d"
После внесения изменений необходимо перезапустить postfix:
service postfix restart || systemctl restart postfix
Информация о конкретном сообщении
postcat -q <идентификатор>
- показывает параметры сообщения и причину, по которой письмо еще не отправлено.
ИСТОЧНИКИ: