Recuperação de mensagens do Zimbra opensource

Na utilização do Zimbra v7 open source edition, não existe nenhuma ferramenta para efectuar os backups.
Assim após ter efectuado os backups para um servidor de backups por rsync (passos que colocarei mais tarde), importa ter a certeza como recuperar os ficheiros no caso de necessidade de reposição das mensagens de uma conta.
As mensagens encontram-se na pasta /opt/zimbra/store , sendo que dentro desta temos duas subpastas “0” e “incoming”.
As mensagens encontram-se na pasta “0” e dentro desta teremos várias pastas também com numeros que corresponde uma a cada utilizador.
Primeiro problema… qual a pasta do utilizador em questão?
Solução encontrada, fazer os seguintes passos:
Usar o utilizador zimbra:
su – zimbra

Procurar a password do mysql:
zmlocalconfig -s | grep mysql | grep password

Deverá aparecer várias linhas em que uma delas será a password de root do mysql.
De seguida encontrar o id do utilizador:
mysql -u root -p

Colocar a password obtida anteriormente.
mysql>use zimbra;
mysql>SELECT id FROM mailbox where comment like ‘%%’;

Iremos obter um id que corresponderá ao nome da pasta (um numero) que contêm as mensagens.
Após isto já saberemos qual a pasta do utilizador em questão e acedendo à pasta do mesmo poderemos obter as mensagens.
Segundo problema … as subpastas numeradas correspondem a que pasta na lista do utilizador?
Não sei 🙂 “trial and error”, o que podemos fazer é repor as mensagens na conta do utilizador.
Ver o link http://www.zimbra.com/forums/installation/12617-recover-data-store-folders.html que contêm algumas sugestões que poderão ajudar.
O que eu fiz foi copiar as mensagens do servidor de backup de volta para o servidor do zimbra para a pasta /opt/zimbra/backup e de seguida importei as mensagens para a conta do utilizador:
Assumindo que as subpastas encontram-se em /opt/zimbra/backup// usei os seguintes comandos:

zmmailbox adminAuthenticate zmmailbox -zadmin

Seleccionar a mailbox para efectuar a reposicao
selectMailbox user@domain

Criei uma pasta para cada das pastas que pretendia repôr:
mbox>createFolder /Recuperacao
mbox>addMessage /Recuperacao backup//

Repeti o createFolder e o addMessage para cada uma das pastas que pretendia repôr.
para sair
exit

até sair da consola/sessão.
No final o utilizador terá nessas pastas as mensagens do backup com as quais poderá fazer o que pretender.
Nota: atenção às quotas dos utilizadores, caso estejam definidas, para que não se chegue ao limite da mesma.
Caso isso seja um problema, o melhor será criar um utilizador novo e importar para esse as mensagens, efectuar o tratamento necessário nesse utilizador e eventualmente sincronizar as mesmas com o imapsync (ou qualquer outro utilitário que sincronize as contas imap).

by. http://www.paulocruz.com.pt/2012/02/27/recupera-o-de-mensagens-do-zimbra-opensource-edition.html