Наверняка проблема элементарная.. но тогда легче будет мне указать на пути решения :)) выгуглить не удалось.
Пользователи получают почту. Кто-то скачивает ее регулярно, кто-то нет. В последнем случае, если файл почты пользователя /var/mail/userX достигает определенного размера, пользователь не может больше обратиться к почте на сервере. При этом не выдается специфической ошибки, а сервер просто не принимает пароль. Картина одинаковая как при скачке почтовыми агентами, так и через web интерфейс.
Я точно не знаю какой размер файла критический, но вот сейчас такая проблема возникла с файлом в 135 Мб.
Буду очень признателен за указание пути поиска причин.
> Наверняка проблема элементарная.. но тогда легче будет мне указать на пути решения
> :)) выгуглить не удалось.
> Пользователи получают почту. Кто-то скачивает ее регулярно, кто-то нет. В последнем случае,
> если файл почты пользователя /var/mail/userX достигает определенного размера, пользователь
> не может больше обратиться к почте на сервере. При этом не
> выдается специфической ошибки, а сервер просто не принимает пароль. Картина одинаковая
> как при скачке почтовыми агентами, так и через web интерфейс.
> Я точно не знаю какой размер файла критический, но вот сейчас такая
> проблема возникла с файлом в 135 Мб.
> Буду очень признателен за указание пути поиска причин.Используйте формат хранения почты Maildir.
> Буду очень признателен за указание пути поиска причин.Будем очень признательны за указание МТА.
>> Буду очень признателен за указание пути поиска причин.
> Будем очень признательны за указание МТА.Sendmail
Это важно? Мне показалось это общесистемная штуковина.. Например редактор MC также отказывается открывать именно все те файлы, которые не скачиваются из-за размера. Пишет file is too large
>>> Буду очень признателен за указание пути поиска причин.
>> Будем очень признательны за указание МТА.
> Sendmail
> Это важно? Мне показалось это общесистемная штуковина..Ограничиваете административно время хранения писем на сервере, ищете mpurge, и про крону запускаете его на очистку почтовых ящиков, с ключами или по дате, или по размеру...
>>>> Буду очень признателен за указание пути поиска причин.
>>> Будем очень признательны за указание МТА.
>> Sendmail
>> Это важно? Мне показалось это общесистемная штуковина..
> Ограничиваете административно время хранения писем на сервере, ищете mpurge, и про
> крону запускаете его на очистку почтовых ящиков, с ключами или по
> дате, или по размеру...mailbox в принципе рудиментарный кривой формат ящика, особенно когда сильно увеличивается количество самих ящиков
> mailbox в принципе рудиментарный кривой формат ящика, особенно когда сильно увеличивается
> количество самих ящиковСогласен, но золотое правило буравчика гласит - "работает - не трожь"...
> Согласен, но золотое правило буравчика гласит - "работает - не трожь"...Дык судя по первоначальному сообщению - как раз таки и не работает. :) Разве не так? Так что трогать придется.
>>>>> Буду очень признателен за указание пути поиска причин.
>>>> Будем очень признательны за указание МТА.
>>> Sendmail
>>> Это важно? Мне показалось это общесистемная штуковина..
>> Ограничиваете административно время хранения писем на сервере, ищете mpurge, и про
>> крону запускаете его на очистку почтовых ящиков, с ключами или по
>> дате, или по размеру...
> mailbox в принципе рудиментарный кривой формат ящика, особенно когда сильно увеличивается
> количество самих ящиковЯ правильно понял, что все в основном пользуются форматом Maildir?
> Я правильно понял, что все в основном пользуются форматом Maildir?У любого из этих 2-х форматов есть свои плюсы и минусы. Но в общем случае при очень больших (как у Вас) ящиках - использование maildir - предпочтительнее. А что Вас, собственно, смущает? Есть утилитка для конвертирования mbox в maildir. Ну и естественно, нужно, чтобы LDA Ваш умел раскладывать приходящую почту в формате maildir, а pop3-сервер умел ее брать в том же формате. Если они собраны уже с поддержкой - надо в конфиге обоих это указать. И всего делов-то.
> - использование maildir - предпочтительнее. А что Вас, собственно, смущает? ЕстьНет, совершенно ничего не смущает. Просто интересуюсь мнениями, чтобы составить свое. Спасибо!
>>>> Буду очень признателен за указание пути поиска причин.
>>> Будем очень признательны за указание МТА.
>> Sendmail
>> Это важно? Мне показалось это общесистемная штуковина..
> Ограничиваете административно время хранения писем на сервере, ищете mpurge, и про
> крону запускаете его на очистку почтовых ящиков, с ключами или по
> дате, или по размеру...не-не! это нельзя. я ж не деспот - я подневольный демократ :)))
> не-не! это нельзя. я ж не деспот - я подневольный демократ :)))Ну тогда ищите почтового клиента, который сможет прочитать unix mailbox в 100Мб без отвала по таймауту.
>> не-не! это нельзя. я ж не деспот - я подневольный демократ :)))
> Ну тогда ищите почтового клиента, который сможет прочитать unix mailbox в
> 100Мб без отвала по таймауту.Вы думаете в этом проблема?? Это довольно странно, так как веб-интерфейс (правда не я его писал) дает один в один тот же результат, что и почтовые клиенты. А стоит он там же где и почтовик, вряд ли там появляется таймаут из-за времени обращения.. Да, и пароль сервер переспрашивает вообще без замедления. Или я что-то не понимаю?
> Вы думаете в этом проблема?? Это довольно странно, так как веб-интерфейс (правда
> не я его писал) дает один в один тот же результат,
> что и почтовые клиенты. А стоит он там же где и
> почтовик, вряд ли там появляется таймаут из-за времени обращения.. Да, и
> пароль сервер переспрашивает вообще без замедления. Или я что-то не понимаю?Для начала - unix mailbox это просто текстовый файл. при типичном pop3-диалоге авторизация идет быстро, ибо она этого файла не касается вообще. а дальше клиент издает команду list для вывода списка всех сообщений в ящике, Pop3-демон при этом будет читать весь этот файл от начала до конца....
> Для начала - unix mailbox это просто текстовый файл. при типичном
> pop3-диалоге авторизация идет быстро, ибо она этого файла не касается вообще.
> а дальше клиент издает команду list для вывода списка всех сообщений
> в ящике, Pop3-демон при этом будет читать весь этот файл от
> начала до конца....Ага.. интересный ход.. то есть после команды list судя по результату pop3-демон сбрасывает сессию глядя на размер файла? Это легко проверить. Спасибо! займусь в этом направлении :)) вдруг поможет.
> Ага.. интересный ход.. то есть после команды list судя по результату pop3-демон
> сбрасывает сессию глядя на размер файла? Это легко проверить. Спасибо! займусь
> в этом направлении :)) вдруг поможет.Да Вы руками подключитесь к 110 порту (телнетом) и сымитируйте POP3-сессию. И увидите результаты. Ну вот так, например:
1. telnet IP 110
2. USER username
3. PASS password
4. LIST - тут увидите список сообщений в почтовом ящике. Не в подробном виде, а просто в виде 1,2 и т.д.
Если совсем уж интересно - почитайте соответствующий RFC.
> Да Вы руками подключитесь к 110 порту (телнетом) и сымитируйте POP3-сессию.
> И увидите результаты. Ну вот так, например:
> 1. telnet IP 110
> 2. USER username
> 3. PASS password
> 4. LIST - тут увидите список сообщений в почтовом ящике. Не в
> подробном виде, а просто в виде 1,2 и т.д.
> Если совсем уж интересно - почитайте соответствующий RFC.:))))))) Спасибо :)) это все я справлюсь :))
> Ага.. интересный ход.. то есть после команды list судя по результату pop3-демон
> сбрасывает сессию глядя на размер файла? Это легко проверить. Спасибо! займусьДа не демон сбрасывает, а клиент отваливается по таймауту, ибо он истекает до того, пока демон прочитает весь файл. У некоторых pop3-клиентов есть возможность настраивать таймауты...
>> Ага.. интересный ход.. то есть после команды list судя по результату pop3-демон
>> сбрасывает сессию глядя на размер файла? Это легко проверить. Спасибо! займусь
> Да не демон сбрасывает, а клиент отваливается по таймауту, ибо он
> истекает до того, пока демон прочитает весь файл. У некоторых pop3-клиентов
> есть возможность настраивать таймауты...Нет-нет, клиент здесь не при чем. Я же говорю - а) весь процесс от ввода пароля до отлупа занимает сотую долю секунды б) самописный клиент установленный там же ведет себя также. таймаут в нем не прописан.
Я вчера не добрался до компа (НГ все-таки :)))) доберусь - напишу кто и в какой стадии сесии ее обваливает.
> Нет-нет, клиент здесь не при чем. Я же говорю - а) весь
> процесс от ввода пароля до отлупа занимает сотую долю секунды б)
> самописный клиент установленный там же ведет себя также. таймаут в немлоги почитайте :) если предыдущая сессия зависла на сервере, то ящик будет блокирован до таймаута сессии сервера, а в логах mailbox is busy - соотв авторизация клиента не пройдет моментально...
> логи почитайте :) если предыдущая сессия зависла на сервере, то ящик
> будет блокирован до таймаута сессии сервера, а в логах mailbox is
> busy - соотв авторизация клиента не пройдет моментально...ок, спасибо. Вечером доберусь - отрапортую.
> ок, спасибо. Вечером доберусь - отрапортую.Попутно совет. Уже чисто организационный. Ввиду вот такой сложившейся ситуации настоятельно советую сходить к кому-то из руководства (ну, начальнику ИТ отдела, например - я не знаю вашу структуру) рассказать о сложившейся ситуации и попросить довести до всех сотрудников, что хранить почту на сервере вечно - это неправильный подход. Ну и, например, каждому лично довести, что почту необходимо скачивать на СВОЙ компьютер, а не переваливать ответственность за ее хранение на администратора почтового сервера. Ну вот где-то так. :) И вообще крайне недурно было бы ввести квоты на почтовые ящики. Это уже чисто техническая сторона вопроса.
> Попутно совет. Уже чисто организационный. Ввиду вот такой сложившейся ситуации настоятельно
> советую сходить к кому-то из руководства (ну, начальнику ИТ отдела, например
> - я не знаю вашу структуру) рассказать о сложившейся ситуации и
> попросить довести до всех сотрудников, что хранить почту на сервере вечно
> - это неправильный подход. Ну и, например, каждому лично довести, что
> почту необходимо скачивать на СВОЙ компьютер, а не переваливать ответственность за
> ее хранение на администратора почтового сервера. Ну вот где-то так. :)
> И вообще крайне недурно было бы ввести квоты на почтовые ящики.
> Это уже чисто техническая сторона вопроса.Спасибо за совет. Все немного сложнее. Это научная организация. Каждый персонаж - творческая личность, а иногда и сумасшедший с точки зрения снаружи. Насилие над личностью ни к чему не приведет, точнее не приводит. Корпоративной машины (слава богу) нет. Ну я начальник этого "отдела" :) Ну ходил я лет 5, махал руками. Пару раз проводил жесткий курс треннинга (скрывал из зоны видимости файл почты целиком). Самые строптивые перешли на мэйл.ру. Но проблема не исчезла (сразу замечу - это бывает очень редко, раз в год максимум, поэтому мне лет 10 было лень об этом думать). На сегодняшний день никто не хранит почту вечно. Но иногда кто-нибудь присылает на почту пару файлов по 50 мб и до свидания! А избежать этого организационно уже нельзя. Такая вот специфика..
Но иногда кто-нибудь присылает на почту пару файлов по 50
> мб и до свидания! А избежать этого организационно уже нельзя. Такая
> вот специфика..У всех mta есть maxmessagesize. Давным-давно он был 2Мб примерно у всех. Поставьте его в разумных пределах, и никто не сможет отправить-получить письма большего объема. Квоты - ну не советую...
> хранить почту на сервере вечно - это неправильный подход.
> почту необходимо скачивать на СВОЙ компьютер, а не переваливать ответственность за
> ее хранение на администратора почтового сервера.нее, в корне не согласен. Пусть на сервере хранится, тогда её сбэкапить можно, и ты полностью независим от состояния рабочей станции. Пусть там с ней что угодно будет.
> И вообще крайне недурно было бы ввести квоты на почтовые ящики.
> Это уже чисто техническая сторона вопроса.Квоты - это уже по ситуации. Диски нонче не сильно дорогие, но чистить ящики тем не менее надо. "хранить почту на сервере вечно", но не всю, а только реально нужную, вот это пользователям надо донести. Может быть и простимулировать их квотированием...
Рапортую.Сессия pop3
+OK
USER userX
+OK
PASS passwdX
-ERR
Connection closedОперация заняла менее 0.4 сек (время за которое человеческий глаз успевает заметить смену изображения)
лог
popa3d[]: Authentication passed for userX
popa3d[]: Failed or refused to load /var/mail/userXЗабил последнюю фразу в гугль и о чудо человеческой мысли, наконец нашел море дискуссий на эту тему! Дело в моем поп демоне, а я его так любил....
Всем большое спасибо за дискуссию!
> Всем большое спасибо за дискуссию!В общем, вам правильно посоветовали - переходить с мейлбоксов на мейлдиры, и с попы3д - на довекот. Сейчас у меня случаются ящики по 6-7 ГБ размером, в которых лежит по 100к+ писем, причем письма иногда бывают больше 100М :)
> В общем, вам правильно посоветовали - переходить с мейлбоксов на мейлдиры, и
> с попы3д - на довекот. Сейчас у меня случаются ящики по
> 6-7 ГБ размером, в которых лежит по 100к+ писем, причем письма
> иногда бывают больше 100М :):))) Ну у всех свои пристрастия :))
Я решил проблему перекомпиляцией popa3d. Процесс занял 10 минут. Надеюсь, попа прослужит мне еще несколько лет.
Для устранения проблемы нужно в файле params.h изменить настройки, касающиеся ограничения размера рабочего файла. Там три настройки, непосредственно к моей проблеме имела отношение:
MAX_MAILBOX_OPEN_BYTES
> :))) Ну у всех свои пристрастия :))Тут уже даже дело не в пристрастиях, а в прогрессе.
Во-первых, ЛДА в мейлбокс сам по себе морально устарел - мейлдир гораздо функциональнее. Одна разница в накладных расходах на удаление письма должна заставить задуматься.
Во-вторых, морально устарел ЛДА средствами МТА - он был оправдан (и, местами, оправдан до сих пор) на старых системах, где почта используется, в основном, для системных уведомлений мылом. Если же у нас поддерживаются почтовые домены с ящиками для юзеров, делать ЛДА из МТА чревато головняком с пермишнами при ПОП/ИМАП.
В-третьих, тот же довекот, который умеет как ПОП/ИМАП, так и ЛДА, имеет в комплекте массу полезнейшего функционала - квоты, сортировки, вакации, экспирации, уведомления по событиям, аудит и прочая.В общем, хоть я и сам начинал со связки сендмейл+попа3д, но сейчас считаю, что возня с ней - это уже далеко за гранью принципа "работает - не трогай".
> :))) Ну у всех свои пристрастия :))
> Я решил проблему перекомпиляцией popa3d. Процесс занял 10 минут. Надеюсь, попа прослужит
> мне еще несколько лет.
> Для устранения проблемы нужно в файле params.h изменить настройки, касающиеся ограничения
> размера рабочего файла. Там три настройки, непосредственно к моей проблеме имела
> отношение:
> MAX_MAILBOX_OPEN_BYTESНа всякий случай замечу, что в popa3d есть поддержка и мейлбокс и мейлдир. То есть - его можно скомпилировать или так, или так. Это на будущее - если вдруг захотите.