Importar correos en Zimbra desde un directorio en Ubuntu 16.04

17 enero 2022

Un buen dia algunos servicios de un servidor Zimbra que tenía instalado no quisieron iniciar, y por mas que lo intenté y a pesar de reinstalar zimbra no iniciaron, entonces fue necesario Instalar Zimbra en otro servidor y buscar la manera de copiar el directorio donde se almacenan los correos para el nuevo servidor.

El problema estaba en que difícilmente coincidan los ID de las cuentas del servidor recién instalado con el anterior que teníamos, además de eso no basta con sólo copiar los archivos .msg a cada directorio sin actualizar la base de datos, sino Zimbra no listará los correos que copiemos.

Después de mucho buscar encontré un comando que a mí me ayudó a resolver el problema y como me tomó un tiempo resolverlo he decidido compartirlo con ustedes para ahorrarles tiempo, espero que les ayude en caso de verse en una situación similar.

El comando es zmmailbox, este comando sirve entre otras cosas para importar correos o migrar de un servidor o directorio al servidor donde se ejecuta los correos de un buzón. recuerden que en mi caso, el servidor de origen no estaba en servicio y tube que copiar el directorio donde se almacenan los correos de zimbra aun directorio local del nuevo servidor.

Los correos en zimbra se almacenan por defecto en el directorio /opt/zimbra/store/0 (si solo manejas un dominio), en caso de tener varios dominios puede ser /opt/zimbra/store/1 . en mi caso copie ese directorio al servidor local en la misma carpeta opt pero con el nombre zimbra.original quedando la ruta de la siguiente manera: /opt/zimbra.original/store/o

Una vez copiado el directorio al nuevo servidor, debemos identificar cuales eran los id de cada buzón, ejemplo: necesitamos identificar en que directorio se encuentran los correos del buzón info@telconaudit.com. Para ello use el siguiente comando.

grep –include ‘*.msg’ -r «información» /opt/zimbra.original/store/o

Tengan en cuenta que la palabra información es una palabra que se repite mucho en los correos enviados y recibidos en ese buzón, si por ejemplo el usuario tuviera configurado un pie de firma, podrían buscar por la frase o nombre del pie de firma.

Analicen los resultados de ese comando para determinar en cuál de los directorios hay más coincidencias, en nuestro caso vemos que la mayoría de coincidencias estaban en /opt/zimbra.original/store/0/3

Para confirmarlo pueden mostrar al azar varios correos para ver su contenido y determinar si efectivamente en to: o en from: aparece la direccion del buzón que queremos importar, en nuestro caso info@telconaudit.com

cat /opt/zimbra.original/store/0/3/msg/1/14589.msg

Una vez que estamos seguros de que efectivamente, son los correos del buzon que queremos, simplemente usamos el comando zmmailbox para importar los correos de la siguiente forma:

/opt/zimbra/bin/zmmailbox -z -m info@telconaudit.com addMessege /inbox /opt/zimbra.original/store/0/3/msg/0

luego repetimos el mismo procedimiento para cada uno de los directorios dentro de /opt/zimbra.original/store/0/3/msg/….

De esta manera yo he conseguido importar los correos en zimbra desde un directorio copiado del antiguo servidor que no iniciaba los servicios a uno nuevo instalado en Ubuntu 16.04.

No se olviden de dejarme sus comentarios y espero este comando les ayude.


Deja una respuesta