Dovecot: письма удалены, а квота ящика не изменилась
Если в Dovecot письма удалены, а занятая квота не уменьшилась, сначала проверьте серверные папки и фактическое завершение удаления. Затем установите используемый механизм учёта квоты и сравните его состояние с данными ящика. Пересчёт нужен при подтверждённом рассогласовании, а не вместо выяснения, где остаются сообщения.
Что пользователь назвал удалением
Для сотрудника удаление — исчезновение строки из списка. Но сообщение могло оказаться в корзине, получить отметку удаления или остаться в другой серверной папке. Начните с одного известного безопасного примера и сравните клиентский экран с серверным представлением. Не удаляйте новые рабочие письма, чтобы проверить подозрение.
В документации Dovecot о квоте и корзине различаются отметка удаления и expunge. Там же описан сценарий клиента с копированием в Trash перед удалением исходника. Поэтому внешне похожие действия могут по-разному менять состав хранилища.
Сначала установите объект учёта
Зафиксируйте версию Dovecot, учётную запись, quota root и подключённый driver. В официальной документации драйвер определяет способ учёта использования, а лимит — отдельная настройка. Не путайте изменение разрешённого объёма с исправлением подсчитанного использования: это разные величины и разные решения.
Если интерфейс показывает процент, сохраните исходные использованный объём и предел, когда они доступны. Рост лимита уменьшит процент без удаления данных. И наоборот, меньший размер каталога на диске не обязан означать такую же цифру в почтовом учёте: у Dovecot предусмотрено использование виртуального размера сообщений.
Где искать различие между экраном и сервером
| Наблюдение | Проверка на сервере | Проверка в клиенте | Ветвь разбора | Основание следующего действия |
|---|---|---|---|---|
| Письмо ушло из входящих | Есть ли оно в Trash или другой папке | Куда направлена кнопка удаления | Перемещение вместо окончательного удаления | Подтверждённое расположение нужной копии |
| Сообщение помечено удалённым | Завершено ли фактическое удаление | Когда клиент завершает такую операцию | Отметка и expunge различаются | Результат операции, а не только скрытая строка |
| Клиент пишет, что удалить нельзя | Итог попытки и состояние квоты | Не требуется ли сначала копия в корзину | Может не пройти первый шаг перемещения | Конкретная ошибка выбранного действия |
| Папки проверены, учёт расходится | Quota root, driver и текущее использование | Не показано ли прежнее сохранённое значение | Возможное рассогласование счётчика | Сопоставимые серверные сведения |
| Диск и почтовая квота различаются | Что измеряет каждый показатель | Какая величина отображается | Разные объекты или способы размера | Описание метрики и условий измерения |
Это карта вопросов для одного ящика, а не готовая команда для массового ремонта. В собственной записи сохраните неизвестные значения. Отсутствие письма в одной папке не разрешает объявить весь ящик очищенным, а изменение индикатора в клиенте не подтверждает физическое освобождение диска.
Полная квота иногда мешает самому перемещению
Dovecot описывает неудобный сценарий: клиент сначала копирует сообщение в Trash, но при заполненной квоте этот шаг может не пройти. Пользователь видит отказ удаления, хотя окончательное удаление и операция с промежуточной копией — разные действия. Проверять надо конкретную последовательность клиента.
Не советуйте всем сотрудникам сразу очищать корзину навсегда. Сначала выясните, есть ли политика хранения и необходимые копии. При сопровождении почтового сервера решение выбирают под версию и конфигурацию: что допускается удалить, какой клиент используется и какой результат ожидается.
Когда оправдан пересчёт
Если фактический состав ящика и механизм квоты установлены, но использование выглядит несогласованным, администратор может рассмотреть штатный пересчёт. В перечне административных действий Dovecot quota get показывает использование, а quota recalc предназначен для его пересчёта. Это не команды очистки переписки.
Не копируйте синтаксис из документации другой ветки на рабочий сервер без сверки. Выбранная документация main не доказывает версию вашей установки. Здесь важен смысл действий: получить состояние, подтвердить расхождение, применить подходящую процедуру и повторно сравнить те же показатели.
Удаление служебных файлов наугад не является заменой пересчёта. Также не нужно менять backend только потому, что индикатор не обновился после одного удаления. Сначала сохраните диагностику, чтобы после вмешательства можно было понять, исправлена ли причина или лишь временно изменился счётчик.
Ограниченный проход для одного ящика
- Сохраните время, ошибку клиента и значения квоты до изменения.
- Проверьте действительное расположение выбранного сообщения и завершение удаления по согласованным правилам.
- Установите версию, driver и область quota root, чтобы сравнение относилось к одному объекту.
- При подтверждённом рассогласовании согласуйте штатную процедуру для выбранного ящика.
- Сравните значения после действия и проверьте дальнейший приём почты безопасным сценарием.
Не начинайте с обработки всех пользователей сразу. Ограничение одним понятным случаем помогает установить, что именно меняет выбранная процедура. Массовое применение без подтверждённой причины одновременно увеличивает нагрузку и лишает возможности сравнить исходное состояние с результатом.
Пересчёт прошёл, но проблема вернулась
Сохраните два момента: сразу после корректировки и после следующей операции. Если расхождение возникло снова, исследуйте событие между ними и работоспособность выбранной схемы учёта. Повторный запуск одного действия по расписанию не объясняет, почему состояние расходится.
Сверьте, не менялись ли настройки хранения, клиентская политика и обслуживающие процессы. Не объявляйте причиной конкретный плагин только из-за его присутствия в конфигурации. Через поддержку сервера соберите относящиеся к моменту сведения, сохранив ограничения доступа к данным пользователей.
Как закрыть обращение понятным результатом
Разделите выводы: сообщение действительно удалено или сохранено по правилам, почтовая квота отражает согласованный объект, дальнейшее получение почты проверено. Свободное пространство файловой системы укажите отдельно, если оно тоже исследовалось. Эти показатели отвечают на разные вопросы владельца.
В памятке сотруднику через поддержку корпоративной почты объясните действие его клиента и правила корзины. Не переносите на пользователя серверные команды и не обещайте, что любое удаление немедленно изменит каждый индикатор. Полезный итог — воспроизводимая процедура с сохранением нужной переписки и понятным учётом.
Вопросы и ответы
Что делает dovecot quota recalc?
Это административный пересчёт текущего использования квоты. Он не предназначен для удаления сообщений и не увеличивает согласованный лимит сам по себе. Применять его следует после проверки ящика и подходящего синтаксиса установленной версии.
Чем отметка удаления отличается от expunge в Dovecot?
Отметка указывает на состояние сообщения, а фактическое удаление выполняется отдельной операцией. Клиент также может сначала перемещать письмо в Trash. Поэтому исчезновение строки из входящих не доказывает освобождение учтённого объёма.
От чего зависит учёт quota per user?
Нужно знать конкретного пользователя, quota root, механизм учёта и действующий лимит. Данные для одного объекта нельзя переносить на другой ящик или весь диск. Настройки проверяют по установленной версии Dovecot.
Читайте также
Строгий DMARC: как разобрать домены в письмах сайта
ПоддержкаПосле настройки POP3 исчезают письма: как остановить потерю
ПоддержкаПочта с кириллицей: домен и имя ящика — разные проверки
ПоддержкаSMTP не работает: почему сайт не отправляет письма
ПоддержкаПеренос корпоративной почты: как проверить письма и папки
ПоддержкаCNAME для корня домена: почему нужен другой механизм