Постоянно при работе с exim приходится искать на других сайтах информацию по работе с очередью и остальным командам MTA Exim. Сайты меняются, уходят, приходят и надеяться можно только на себя. Решил у себя сделать заметку по наиболее часто используемым мною командам.
Управление Exim
Проверка конфигурации, вывод версии, вывод включенных в сборку модулей
exim -bV
Чем в данный момент занят MTA Exim?
exiwhat
Проверка маршрутизации почты по адресу электронной почты
exim -bt [email protected]
Генерирование и отображение статистики Exim из лог-файла
eximstats /path/to/exim_mainlog
Проверка SMTP соединения из коммандной строки для определенного IP-адреса. Результат покажет через какие проверки будет проходить письмо с данного IP-адреса, через какие ACL и фильтры. Необходимо заменить x.x.x.x на необходимый IP-адрес.
exim -bh x.x.x.x
Отображение всех настроек Exim
exim -bP
Информация по очередям (Queue)
Вывести информацию по колличеству писем в очереди
exim -bpc
Вывести список сообщений в очереди (время в очереди, размер, идентификатор сообщения, отправитель, получатель)
exim -bp
Отображение всех сообщений в очереди (количество, объем, старых, новых, области, и итоги)
exim -bp|exiqsumm
Поиск сообщений в очереди
Поиск в очереди сообщения от определенного отправителя
exiqgrep -f [user]@example.com
Поиск в очереди сообщений для конкретного получателя/домена
exiqgrep -r [user]@example.com
Вывод только Message-ID, как результат одного из двух поисковых запросов выше
exiqgrep -i [ -r | -f ] ...
Вывод количества сообщений, как результат одного из поисковых запросов выше
exiqgrep -c [ -r | -f ] ...
Вывод только Message-ID очереди
exiqgrep -i
Просмотр сообщений в очереди
Просмотр заголовков сообщения в очереди
exim -Mvh
Просмотр тела сообщения в очереди
exim -Mvb
Просмотр лога сообщения
exim -Mvl
Управление очередью
Отправка всех frozen писем
exiqgrep -zi | xargs exim -M
или
exim -bp | grep -i frozen | awk '{ print $3 }' | xargs exim -M
Начать процесс выполнения очереди
exim -q -v
Начать процесс выполнения только для локальных получателей
exim -ql -v
Удалить сообщение из очереди
exim -Mrm
Удалить все сообщения, которые старше, чем Х секунд из очереди (например, 5 дней будет 432 000 секунд)
exiqgrep -o 432000 -i | xargs exim -Mrm
Заморозить все сообщения в очереди от отправителя
exiqgrep -i -f [email protected] | xargs exim -Mf
Просмотр заголовков сообщения в очереди
exim -Mvh
Просмотр теля сообщения в очереди
exim -Mvb
Просмотр лога сообщения
exim -Mvl
Удалить все замороженные сообщения из очереди
exiqgrep -zi | xargs exim -Mrm
Удалить все сообщения из очереди (плохая идея)
# exiqgrep -i | xargs exim -Mrm
# exipick -i | xargs exim -Mrm
# exim -bpr | awk {'print $3'} | xargs exim -Mrm
retry time not reached for any host after a long failure period
|
|
или
|
|
Дебаг
Проверка mysql lookups
|
|