LINUX.ORG.RU
ФорумAdmin

cyrus-imapd и квоты


0

0

Добрый день,

Установлен cyrus-imapd, заведены пользователи, и установлены квоты (sq user.[username] storage [size]). Все работает. Но при переполнения ящика пользователь ничего не может сделать с почтой (через web-интерфейс или при работе через imap): ни удалить почту, ни почистить корзину. Что не так?

--- Спасибо.

anonymous

А какой ACL на почтовом ящике установлен? Какое-нибудь сообщение об ошибке выдается? Что пишут в логах?

geekkoo
()
Ответ на: комментарий от geekkoo

ACL на ящике: lrswipcda Thunderbird, например, выдает сообщение "The current command did not succeed. The mail server responded: Over quota". Т.е. даже не получается почистить ящик. В логах есть сообщение "SQUAT failed to open index file". Но как я понял, это следствие переполнения.

--- Сергей

anonymous
()
Ответ на: комментарий от anonymous

лекарство - это временное увелечиние квоты. т.к. при удалении писем, любому клиенту для начала надо скопировать письмо в мусор, а только затем его удалить из папки, у тебя на это нету место.

SQUAT - это индекс писем, он ничего общего с квотой не имеет. с пользователем cyrus выполни команду /path/to/your/cyrus/install/bin/squat и эета ошибка исчезнет "SQUAT failed to open index file"

anonymous
()
Ответ на: комментарий от anonymous

sorry, насчет squat вышла ошибочка, надо запустит команду: su cyrus -c "/usr/cyrus/bin/squatter -r -v domain/com\!user/*" или su cyrus -c "/usr/cyrus/bin/squatter -r -v"

первая у меня стоит в crontab'e

anonymous
()
Ответ на: комментарий от anonymous

В принципе так и делаю... :( Но неужели все так безрадостно? Ведь каждый раз просить админа увеличить квоту при переполнении ящика как-то напряжно. А пользователей несколько десятков, и переполнения ящика не такое уж редкое явление :(

anonymous
()
Ответ на: комментарий от anonymous

В Thunderbird есть же выбор, что делать с письмом при удалении - переместить в корзину, пометить как удаленное и удалить немедленно. От этого что-нибудь меняется? Последний вариант, по моему, должен помочь. Если нет, то можно попробовать второй вариант. А потом соединиться через telnet и дать команду expunge :)

geekkoo
()
Ответ на: комментарий от geekkoo

В Thunderbird'е не получается даже очистить корзину. Не работает нигде, даже через webmail. Вариант с telnet'ом, думаю, пользователям предлагать бесполезно :)

anonymous
()
Ответ на: комментарий от anonymous

>>В Thunderbird'е не получается даже очистить корзину.

Ну, не знаю. У меня с "When I delete a message: Remove it immediately" на over-quota ящике только-что получилось и письма удалять и Trash чистить.

geekkoo
()
Ответ на: комментарий от geekkoo

Да, только что получилось. Но к сожалению, это полностью не решает проблему. Пользователи используют и другие mail-клиенты, и многие используют webmail (в моем случае Roundcube), который не работает. --- Вопрос на будущее: сейчас где-нибудь реализован "толковый" механизм квотирования, лишенный таких проблем?

anonymous
()
Ответ на: комментарий от anonymous

Проблема не в механизме квотирования, а в тупых клиентах. Об этом в Cyrus-IMAP FAQ написано:

Q: Why can't I delete any messages from my over-quota mailbox? I'm using a client with a 'trash folder'.

A: Trash folders, as they are commonly implemented (as an actual IMAP mailbox), do not fit the IMAP delete/expunge model very well. In fact, naive client implementations will get stuck in a situation where they cannot delete a message from a mailbox because they try to COPY it to the trash folder before deleting the message. This operation will fail due to the mailbox being over quota. This is separate from the fact that a specific mailbox name is not interoperable between clients (one might call it 'trash', another 'Trash', another 'Recycle Bin', etc)

Given the lack of protocol support for a trash folder, this is mostly a quality-of-implementation issue on the client side. There are a few options here:

* Contact your client vendor to have the broken client fixed (one possibility is to have the client ask the user if they wish to permanantly delete the message if the COPY operation fails).
* Stop using the 'trash mailbox' feature of your client (if possible).
* Set a separate quota root on the 'trash folders' of users. This last option is significantly harder to do correctly, since it assumes that all clients that make use of a trash folder do so with the same folder name.

В случае с webmail, по моему, имеет смысл не копировать удаленное в Trash ящик, а реализовать что-то с /Deleted флагом и expunge при выходе. Может быть в твоем Roundcube есть что-то похожее?

geekkoo
()
Ответ на: комментарий от geekkoo

geekkoo, спасибо! В настройках Roundcube есть возможность сразу удалять письма.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.