[mdk-re] Postfix mailbox size

Ivan Zakharyaschev =?iso-8859-1?q?imz_=CE=C1_linux=2Eru=2Enet?=
Сб Апр 7 17:32:11 MSD 2001


	Hello!

On Thu, 5 Apr 2001, Carry Ram wrote:

> > > > > Замучил вопрос с ограничение размера сабжа. Надо юзверям
> раздать
> > > ящики
> > > по 8 метров и более ни ни! Стандартно Postfix это не контролирует
> > > (размер
> > > разрулить, чтоб включить квотирование размеров файлов юзеров  в
> > > почтовой
> > > папке (типа path/spool/mail)?
>
> > Думаю, что с помощью procmail это действительно удобнее: Вы тогда
> сами
> > сможете определить поведение при доставке почты в ящик, превышающий
> по
> > размеру некоторый уровень, а не ждать, что скажет postfix/procmail,
> когда
> > не сможет записать в ящик (из-за квоты).
>
> Пишет... Да, много чего пишет... Как это делается в procmail? Никак не
> могу найти в настройках ограничение на размер файла (майлбокса)
> пользователя.
> Или где есть что почитать?

Да в procmail'е нет уже готовой опции для такого ограничения. Нужно самому
что-нибудь придумать, например

MAXMAILBOXSIZE=1000000

:0 Bh
* ! ^^^^
* ? let "$MAXMAILBOXSIZE < $(stat -t /var/spool/mail/$LOGNAME | cut -d' ' --fields 2)"
! $LOGNAME

Этот кусок procailrc -- не завершенный и готовый к использованию, а просто
идея, которую можно развить. В таком виде он мог бы быть помещен в
персональный procmailrc (а надо бы в глобальный). Что он делает? - Если
размер ящика превышен, то обрезает тело у всех сообщений и пересылает
дальше адресату. Вместо /var/spool/mail/$LOGNAME можно, наверное, $ORGMAIL
использовать.

Говоря, что с помощью procmail будет удобнее, я имел в виду, что можно
самому определить и правила, и действия, которые будут применнеы к
сообщению. В Вашем случае, например, разумно быдо бы отправителю посылать
уведомление о том, что письмо не дошло, получателю -- о том, что превышен
размер и поэтому это письмо не получено, и, возможно, автоматическая
чистка ящика (по-моему, это будет неприятно). Можно оставить письмо в
очереди до тех пор, пока ящик не уменьшится.

Прочитать про procmail можно в man procmail{,rc,ex}.

Best regards,
Ivan.






Подробная информация о списке рассылки community