LINUX.ORG.RU
ФорумAdmin

Zimbra не удаляет почту из /opt/zimbra/store/

 


0

2

Доброго времени суток!

Есть почтовый сервер Zimbra (8.6.0_GA_1153.FOSS) и у него с недавних пор началось заканчиваться место на HDD, причиной этому стало большое скопление писем пользователей в /opt/zimbra/store/.

Была найдена информация что нужно изменить значение: zimbraMailMessageLifetime и вся почта удаленная из корзины будет безвозвратно удаляться через 30 дней, но почту можно восстановить и за более долгий период (1 год). После изменения опытным путем было выявлено что этот параметр отвечает за удаление писем из всех папок пользователей включая «Корзину», но сами файлы писем так и остаются лежать на HDD сервера и занимать место.

zmprov gs server_name | grep -i purge
zimbraMailPurgeBatchSize: 1000
zimbraMailPurgeSleepInterval: 1m

zmprov gc COS | grep -i life
zimbraMailMessageLifetime: 0
zimbraMailSpamLifetime: 1d
zimbraMailTrashLifetime: 2d

Возможно ли решить сложившуюся проблему средствами Zimbr'ы?



Последнее исправление: Ater (всего исправлений: 1)

Вопрос, весьма интересный...

но сами файлы писем так и остаются лежать на HDD сервера и занимать место.

Я предполагаю вот что: zimbra, умеет дедупликацию, на уровне писем. То есть, если я тебе пошлю письмо с файлом в 10мб. и в копию поставлю твоего коллегу, zimbra, умная, не будет его задваивать. Но, если ты его удалишь в корзину, потом из твоей корзины оно исчезнет, то на диске, оно вполне может остаться. Так как, например, я у себя его не удалял.

Это лишь моё предположение. Подпишусь, так-как самому интересно.

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

zimbra, умная, не будет его задваивать.

Проверил, письмо как раз таки задваивается. Отправлял письма своим коллегам и на сервере в их папках почты лежит этот файл с расширением *.msg и разными значениями item и change т.е. все писима которые приходят мне или любому другому сотруднику будут храниться непосредственно в его папке на сервер.

Конечно проблему можно решить удалением старых писем ручками/скриптом с сервера, но тогда поднимается другой вопрос как быть с индексацией почтового ящика? Как я понял ведь там хранятся заголовки писем и адрес обращения до файла письма (*.msg). Пробовал в web-интерфейсе zimbra делать переиндексацию почтового ящика после удаления письма из корзины и удаления *.msg файла с сервера, информация об этом письме в файле индексов остается. Я захожу в почту через web-интерфейс, нажимаю правой кнопкой на корзину и выбираю восстановление удаленных элементов, там видно это письмо из интексов, но при востановление появляется ошибка:

Произошла неизвестная ошибка (mail.NO_SUCH_BLOB).
msg: No such blob: mailbox=558, item=17802, change=33059

оно то и понятно что сервер не может найти файл письма и указывает где он должен находиться.

Получается что нужно тогда чистить и сами файлы индексов которые хранятся в /opt/zimbra/index/ т.к. они тоже будут учеличиваться в размерах, хоть и гораздо медленнее.

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

Проверил, письмо как раз таки задваивается. Отправлял письма своим коллегам и на сервере в их папках почты лежит этот файл с расширением *.msg и разными значениями item и change т.е. все писима которые приходят мне или любому другому сотруднику будут храниться непосредственно в его папке на сервер.

Не в курсе что такое «значениями item и change» но вам скорее про хардлинки говорили. cyrus так делает, dovecot не уверен но вроде тоже умеет. Как вариант, выполните на каталоге где сабж почту хранит команды du -hs и du-hsl и сравните результат.

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

Действительно делаются хардлинки:

# du -hs /opt/zimbra/store/0/558/msg/
142M /opt/zimbra/store/0/558/msg/
# du -hsl /opt/zimbra/store/0/558/msg/
191M /opt/zimbra/store/0/558/msg/

# ls -il /opt/zimbra/store/0/558/msg/4/17096-31880.msg
1657129 -rw-r----- 4 zimbra zimbra 3942 июня 21 19:03 /opt/zimbra/store/0/558/msg/4/17096-31880.msg

# find /opt/zimbra/store/0/ -xdev -inum 1657129
/opt/zimbra/store/0/558/msg/4/17097-31881.msg
/opt/zimbra/store/0/558/msg/4/17096-31880.msg
/opt/zimbra/store/0/3/msg/10/43040-77062.msg
/opt/zimbra/store/0/3/msg/10/43039-77059.msg

Ater
() автор топика
Ответ на: комментарий от DALDON

Похоже на то, ну пока что обратного я не нашел. Значит буду чистить скриптом все ящики.

Ater
() автор топика

Сейчас уже не помню, но где то в оф-вики было написано, что зимба не удаляет письма с харда сервера, при удалении их пользователем(пару раз спасало, когда обиженный юзер грохал переписку со своего ящика при увольнении), у меня письма лежать с 13 года, порядка 200 ящиков, общий объем занимаемого пространства 22 гб из 500.

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

пару раз спасало, когда обиженный юзер грохал переписку со своего ящика при увольнении

т.е. вы из тех кто еще не делает бэкапы? ну-ну.

anc ★★★★★
()
Ответ на: комментарий от julixs

Ой, да ладно 22Гб, даже не смешно. Мне вон недавно понадобилась старая копия одного ящика, так он один 54Гб занимает, ничего страшного, только подождать пока развернется из бэкапа.

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

Это как? На zimbra разве такое возможно? Или у тебя exchange с гранулярным восстановлением? Если второе, то тогда, уж не в теме про zimbra такое писать... Или в zimbra есть способ гранулярного восстановления?

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

Да, я не про zimbra писал. У меня cyrus. Но сомневаюсь что для zimbra такой же вариант не прокатит, а если не прокатит то и тем более она не нужна.

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