Как я могу скопировать все настройки электронной почты, учетной записи и домена в Zimbra?

У меня есть рабочая установка в контейнере Ubuntu 14.04 openVZ версии Zimbra Collaboration 8.6.0 с открытым исходным кодом. Он отлично работает, и я уже установил ежедневное полное резервное копирование всего почтового сервера/контейнера (скажем, в 5:00 утра), и с последним я могу полностью восстановить сервер (в 5:00 статус ).

Теперь, однако, я бы использовал rsync для хранения синхронизированной посекундной копии всех присутствующих электронных писем, учетных записей и доменов (то есть не копии всего сервера), но я не смог найти файлы, содержащие данные (электронные письма, учетные записи, домены...).

Где находятся? Сохраняются ли они в базе данных? Какой путь к этим файлам? /опт/зимбра/...?


person atazmak    schedule 12.05.2015    source источник


Ответы (3)


Каждый элемент zimbra состоит из 2 сущностей, метаданных и блоба, метаданные хранятся в базе данных mboxgroup{mailbox_id % 100}.mail_item в виде закодированного словаря (в формате zimbra), он содержит идентификатор объекта, тему, идентификатор папки, имя, контактные поля, и т. д. Каждый элемент также может иметь связанный BLOB-объект, например, электронное письмо будет иметь свой необработанный MIME, контакт может иметь MIME, который содержит изображение контакта и т. д., они хранятся в хранилище Zimbra как простые файлы.

Аккаунт, Cos, Домены хранятся в ldap.

person workless    schedule 15.05.2015

все сообщения хранятся как уникальные BLOB-объекты в файловой системе «store/», а затем указываются с помощью метаданных в базе данных Mysql.

вам нужно сначала узнать, какая база данных соответствует вашему почтовому ящику:

(как пользователь Zimbra)

for U in $(zmprov -l gaa);do echo $U;zmprov getMailboxInfo $U;done

mailboxid даст вам номер базы данных пользователя: затем подключитесь к этой базе данных.

mysql mboxgroup5
mysql> select id, 
    concat('/opt/zimbra/store/', (mailbox_id >> 12), '/', mailbox_id, '/msg/',
    (id % (1024*1024) >> 12), '/', id, '-', mod_content, '.msg') as file
    from mail_item where mailbox_id=5 limit 1;

идентификатор = номер сообщения

echo "select id,concat('/opt/zimbra/store/', (mailbox_id >> 12), '/', mailbox_id, '/msg/',(id % (1024*1024) >> 12), '/', id, '-', mod_content, '.msg') as file, metadata from mail_item where mailbox_id=5 and id > 200 and id < 300"|mysql mboxgroup5 

с этой строкой у вас есть сообщения в виде файла, которые связаны с вашим mailbox_id

person dominix    schedule 17.07.2015

К вашему сведению, в большой установке Zimbra со многими почтовыми хранилищами/большим количеством или почтовыми ящиками идентификатор mboxgroup будет отличаться.

$ zmprov getMailboxInfo [email protected]
mailboxId: 5247
quotaUsed: 1951021

$ expr 5247 % 100
47

$ mysql mboxgroup47
person khondhu    schedule 29.07.2015