Postfix. Работа с очередью сообщений — различия между версиями

Материал из megapuper
Перейти к: навигация, поиск
 
(не показаны 3 промежуточные версии этого же участника)
Строка 5: Строка 5:
  
  
Принудительно запустить отправку из очереди
+
'''Принудительно запустить отправку из очереди'''
 
  mailq -q
 
  mailq -q
 
или:  
 
или:  
Строка 19: Строка 19:
  
 
* идентификатор письма можно увидеть командой mailq.
 
* идентификатор письма можно увидеть командой mailq.
 +
  
 
3. Очистить очередь по отправителю:
 
3. Очистить очередь по отправителю:
Строка 25: Строка 26:
  
  
'''Количество писем в очереди'''
+
'''Количество писем в очереди'''<br>
 
Команда mailq в конце выдает общее количество сообщений в очереди, например:
 
Команда mailq в конце выдает общее количество сообщений в очереди, например:
 
  -- 23 Kbytes in 18 Requests.
 
  -- 23 Kbytes in 18 Requests.
Строка 39: Строка 40:
  
  
Перезапустить очередь
+
'''Перезапустить очередь'''
 
  postsuper -r ALL
 
  postsuper -r ALL
  
Если не помогло, поочередно:
+
Если не помогло, поочередно
 
  postfix stop
 
  postfix stop
 
  postsuper -r ALL
 
  postsuper -r ALL
Строка 48: Строка 49:
  
  
Информация о конкретном сообщении
+
'''Информация о конкретном сообщении'''
 
  postcat -q <идентификатор>
 
  postcat -q <идентификатор>
 
* показывает параметры сообщения и причину, по которой письмо еще не отправлено.
 
* показывает параметры сообщения и причину, по которой письмо еще не отправлено.

Текущая версия на 00:18, 7 апреля 2023

Посмотреть очередь

mailq

или:

postqueue -p


Принудительно запустить отправку из очереди

mailq -q

или:

postqueue -f


Очистить очередь
1. Удалить все сообщения

postsuper -d ALL

2. Удалить определенное письмо из очереди

postsuper -d <идентификатор письма>
  • идентификатор письма можно увидеть командой mailq.


3. Очистить очередь по отправителю:

postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } /spammer@email\.com/ { print $1 }' | tr -d '*!' | postsuper -d -
  • в данном примере мы удалим все письма от spammer@email.com.


Количество писем в очереди
Команда 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


Информация о конкретном сообщении

postcat -q <идентификатор>
  • показывает параметры сообщения и причину, по которой письмо еще не отправлено.