deliver-only

<spool>Хаб задаёт сам

Только отдавать письма из этого каталога, не записывая новых
в конфигурации это строкаdeliver-only falseвнутри блока <spool>
Каталог, который только опустошается

Умолчание — false. С true MTA доставляет письма из каталога, но не пишет в него новых. Каталог постепенно пустеет и больше не наполняется.

Назначение руководство называет прямо: восстановление после отказа. Каталог спула с упавшего сервера подключается к работающему, и письма из него доставляются — при том что новая почта продолжает ложиться в обычные каталоги.

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

Главная ловушка — забыть выключить. Каталог, помеченный «только отдать», опустеет и останется пустым: MTA в него больше не пишет. Если это был основной каталог узла, письма пойдут в остальные — а если остальных нет, приём остановится совсем.

Вторая половина: подключённый чужой спул несёт чужие письма. Они уйдут с адресов этого узла, а не того, где были поданы, — значит и SPF, и подпись, и репутация будут вашими. Перед подключением стоит понимать, что именно там лежит.

Что делает Хаб. Пишет no — явно, в блоке единственного каталога спула базовой конфигурации.

Строка повторяет умолчание, и это осмысленно: каталог у нас один, и yes в нём означал бы остановку приёма. Явное no рядом с delete-file-holders yes читается как «этот каталог рабочий, и вот как он себя ведёт».

Рекомендуемые значения

Что ставить. Значение временное по назначению:

Значение Когда
no (умолчание) обычный рабочий каталог
yes подключённый спул с отказавшего сервера — до тех пор, пока не опустеет

Второе снимают вместе с самим каталогом: опустевший спул отключают, а не возвращают в работу.

Умолчание false и назначение «подключить спул отказавшего сервера» — из руководства, § 3.3.2.2. Предупреждение про чужие письма и репутацию наше.
Пример в конфигурации
# спул с отказавшего сервера: отдать и отключить
<spool /var/spool/pmta/recovered>
    deliver-only true</spool>
Письма из этого каталога уйдут, новые в него не лягут. Уйдут они с адресов этого узла — со всем, что из этого следует для подписи и репутации.
жёлтым — — имена директив, голубым — блоки. Так же они подсвечены и в тексте карточки.
▲

Типичные ошибки и проблемы

что делают не так и чем это кончается2 ошибки▶

Ставят режим на единственный каталог узла

наш опыт

Чем чреватоПисать новые письма некуда: MTA в него больше не пишет, а других каталогов нет. Приём останавливается целиком.
Как заметитьПодача отбивается временной ошибкой, спул при этом пустеет.
Как правильноВозвращать no — либо заводить второй каталог, если режим нужен по-настоящему.

Подключают чужой спул, не разобравшись, что в нём

наш опыт

Чем чреватоПисьма уйдут с адресов этого узла — с его подписью, его SPF и его репутацией. Содержимое чужой очереди при этом может оказаться каким угодно.
Как заметитьВ очередях появляются отправители и получатели, которых на этом узле не было.
Как правильноПосмотреть очереди подключённого спула прежде, чем разрешать доставку.
Совместимость
PowerMTA 6.0
описана в руководстве этой версии · платформа: любая
С какой версии директива доступна, вендор указывает не для всех — здесь пометки нет. Имя встречается и в издании руководства 5.0.
Справочные данные
Синтаксис
deliver-only <boolean>
Значения
yes | no | true | false
Умолчание
false § 3.3.2.2
Применение
reload, перезапуск не нужен
Очередь
затронет и то, что уже стоит в очереди
Где писать
<spool>
Сколько раз
один раз в блоке
Всё здесь — из руководства, с разделом.
Наследование
Директива живёт в <spool> и относится к одному каталогу. Наследования между каталогами нет — в этом и смысл: один каталог может быть в режиме опустошения, пока остальные работают обычно.
Как проверить на узле
Режим видно в конфигурации, опустошение — по содержимому каталога:
grep -n -A4 '^<spool' /etc/pmta/config
find /var/spool/pmta -type f | wc -l
Каталог в режиме опустошения должен пустеть. Если счётчик не меняется, письма в нём не доставляются — и причину надо искать в очередях, а не в этой строке.
В Хабе
Управляется
Аналитика → Учёт узла
Значение
Хаб подбирает сам — темп, стадия прогрева, метрики
Цена ошибки
с перерывом: применение прерывает работу узла
Сценарии
Подготовить узел к отправке