В этой шпаргалке я собираю полезные команды postfix, которыми я часто пользуюсь. Для администрирования postfix в основном используются следующие пять команд:
mailq
postqueue
postcat
postsuper
postconf
Вывести текущую очередь postfix:
$ mailq
или:
$ postqueue –p
$ 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
Количество писем в очереди:
$ mailq | grep Request
Или так:
$ mailq | wc -l
Количество писем в очереди на конкретный адрес:
$ mailq | grep info@vmblog.ru | wc –l
Вывести информацию о конкретном письме в очереди (список messageID можно вывести командой mailq):
$ postcat -q messageID
Сохранить письмо в файл:
$ postcat -vq messageID > out_message.txt
Статистика по отклоненным письмам:
$ qshape deferred
Список самых активных отправителей:
$ mailq|grep ^[A-F0-9] |cut -c 42-80| sort | uniq -c| sort -n
Информацию по очереди отправки на конкретный домен:
$ mailq | grep gmail
или
$ postqueue -p | grep gmail
Принудительная отправка из очереди:
$ mailq -q
или:
$ postqueue –f
Принудительная отправка на домен:
$ postqueue -s example.com
Принудительная отправка сообщение по messageID:
$ postqueue -i messageID
Или:
$ postsuper -r messageID
Мягкий перезапуск очереди:
$ postsuper -r ALL
Полный перезапуск:
$ postfix stop
$ postsuper -r ALL
$ postfix start
Удалить все письма из очереди:
$ postsuper -d ALL
Очистить только очередь deffered:
$ postsuper -d deferred
Удалить сообщение по messageID
$ postsuper -d messageID
Удалить письмо из очереди по отправителю:
$ postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } /spam@email\.com/ { print $1 }' | tr -d '*!' | postsuper -d
Вывести текущие параметры postfix:
$ postconf
Информация по конкретному параметру:
$ postconf | grep smtp_helo_timeout
Изменить значение параметра postfix без перезагрузки:
$ postconf -e 'message_size_limit = 20480000'
Проверить синтаксис конфигурационных файлов postfix:
$ postfix check
Вывести настройки по-умолчанию:
$ postconf -d
Вывести только настройки, которые отличаются от дефолтных:
$ postconf -n