Официальная возможность получить лицензионный софт бесплатно.
Giveaway of the Day
Это не реклама!

Щелкните для получения прогноза по Биробиджану


Показаны сообщения с ярлыком zmprov ma. Показать все сообщения
Показаны сообщения с ярлыком zmprov ma. Показать все сообщения

пятница, 5 сентября 2014 г.

Zimbra: переполнение почтовых ящиков

Есть у меня несколько пользователей, которым по роду работы ежедневно приходят сотни сообщений с вложениями.

Пользователи работают через POP3, и в их Outlook-ax выставлено "Удалять сообщения с сервера через 14 дней". Разумное ограничение, ведь бывает, что пользователь скачал сообщение и случайно удалил его у себя в клиенте, и самый быстрый способ вернуть статус-кво - это залезть в п/я веб-клиентом. (вариант не единственный, но речь сейчас не об этом)

Квота задана COS-ом, 300МБ на ящик. Но одному из пользователей не хватает и этого. Делать ему отдельный COS или вручную править лимиты не хочется. В итоге, если не разрешить POP3 удалять сообщения с сервера сразу по получении, или не делать ручную чистку ящика, то переполнение наступает очень быстро и письма к этому пользователю зависают в очередях, регулярная проверка которых приводит к снижению производительности сервера со всеми неприятными вытекающими.

При просмотре параметров п/я обнаружился параметр, аналога которому в UI ZCS-OSE 8.0.6 я не нашел:

$ zmprov ga пользователь|grep Quota
zimbraMailAllowReceiveButNotSendWhenOverQuota: FALSE
zimbraMailQuota: 314572800
zimbraQuotaWarnInterval: 1d
zimbraQuotaWarnMessage: (текст предупреждения удален)
zimbraQuotaWarnPercent: 90

Вот это - zimbraMailAllowReceiveButNotSendWhenOverQuota - что? В UI не нашел, хотя, может, плохо искал. Однако, название параметра говорит само за себя: "разрешить получение, но не отправку при переполнении п/я". Что нам, собственно, и требуется, поскольку почта в очередях имеет привычку протухать.

Провел эксперимент:

$ zmmailbox -z -m gms трудный_пользователь
299.62 MB

Понятно, ящик забит под завязку.

$#ошибся первый раз:
$ zmprov ma трудный_пользователь zimbraMailAllowReceiveButNotSendWhenOverQuota=true
usage:  modifyAccount(ma) {name@domain|id} [attr1 value1 [attr2 value2...]]
For general help, type : zmprov --help

$#ошибся второй раз:
$ zmprov ma трудный_пользователь zimbraMailAllowReceiveButNotSendWhenOverQuota true
ERROR: account.INVALID_ATTR_VALUE (zimbraMailAllowReceiveButNotSendWhenOverQuota must be TRUE or FALSE)

$#а вот так правильно:
$ zmprov ma трудный_пользователь zimbraMailAllowReceiveButNotSendWhenOverQuota TRUE

То есть, с какого-то перепуга булев параметр стал чувствителен к регистру? Ну да ладно... Заходим в диспетчер очередей и видим, что бедного пользователя в очереди на протухание ждут 129 сообщений. Но мы ж вроде разрешили доставку в переполненный ящик? Делаем "сброс" - попытку доставить всю ожидающую почту. Как ни странно, но очередь очищается, значит почта доставлена. Что ж, снова посмотрим, что там с размером п/я:

$ zmmailbox -z -m gms трудный_пользователь
640.17 MB

Неслабо так! Чувствую, всё равно придется донастраивать ему клиента, чтобы не хранить такие объемы на своем сервере.

понедельник, 17 сентября 2012 г.

Zimbra: перенос на другой сервер

В целом, перенос 6.0.15 с одного физического сервера (32) на другой (64) прошел нормально:

  1. скопировал каталог /opt/zimbra
  2. накатил сначала 6.0.15/32, чтобы восстановить пути, кронтабы и права
  3. поверх нее накатил 6.0.15/64
  4. после апгрейда ОС на новом сервере с Ubuntu 10.04 на 12.04 сразу накатил 8.0.0/64
  5. работает
Однако, во время второго этапа вылезла бяка: новый сервер имел другое имя, не такое же, как старый, из-за чего сетап вываливался по таймауту доступа к старому серверу, более недоступному.
Пришлось рыться. Решение: zmsetservername.

Поскольку работал с очень старой, еще мартовской копией /opt/zimbra, решил перекачать новую почту со старого сервера (он недоступен новому по имени, но доступен по IP - две разные подсети, отделенные маршрутизатором). Сначала попробовал zmztozmig, но выяснилось, что оно не умеет создавать на новом сервере учетки, которые еще есть на старом, но которых еще нет на новом. Проще говоря, синхронизировались/мигрировали только существующие на обоих серверах аккаунты.
Это меня сильно расстроило. Но оказалось, что в админке 8.0.0 есть удобная штука - мастер переноса учетных записей, который живет в "средствах и миграции":