Puedes exportar Correo, libreta de direcciones, agenda, tareas y maletin.
Y en el mismo sitio lo puedes importar.
Pero desde hace algunas versiones de Zimbra el administrador no puede entrar en la cuenta del usuario.
Como no siempre se puede dejar a los usuarios la responsabilidad que ellos mantengan sus copias de seguridad, existe un comando.<Para hacer la copia del buzón.
zmmailbox -z -m cuenta_a_respaldar getRestURL -o nombre_de_la_cuenta_respaldada.tgz "?fmt=tgz"
Para restaurar
zmmailbox -z -m cuenta@tu_dominio postRestURL "//?fmt=tgz&resolve=skip" cuenta_respaldada.tgz
aquí hay varios parámetros en caso de conflicto.
skip: solo importa lo que no este en la cuenta
modify: modifica el elemento viejo
replace: borra el elemento viejo y lo reemplaza
reset: borra todo y restaura lo que tenga el backup
He recopilado de internet un script para hacer esto, esta modificado para que todos los ficheros estén dentro de la ruta /mnt/backup/
(ojo con el sistema de fichero y su limite de tamaño en donde vallamos a guardar los tgz ya que los backup puede ser grandes dependiendo del tamaño de la cuenta)
Este sistema de backup consta de 2 ficheros y uno que se creara despues tienen que estar siempre en la misma ruta especificada dentro del script en este ejemplo /mnt/backup/ para cambiar la ubicacion tambien tiene que ser cambiado en el interior del script.
exportar.sh
#!/bin/bash
# exportar.sh usuario@dominio.com -- Script para exportar el usuario que se pasa por parametro.
# zmmailbox -z -m cuenta@tu_dominio postRestURL "//?fmt=tgz&resolve=reset" cuenta_respaldada.tgz
USERNAME=$1
TODAY=`date`
LOGFILE="/mnt/backup/log/backuplog.txt"
echo $TODAY >> $LOGFILE
echo $USERNAME >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME gms >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME getRestURL "//?fmt=tgz" > /mnt/backup/cuentas/$USERNAME.tgz
echo --------------------- >> $LOGFILE
# exportar.sh usuario@dominio.com -- Script para exportar el usuario que se pasa por parametro.
# zmmailbox -z -m cuenta@tu_dominio postRestURL "//?fmt=tgz&resolve=reset" cuenta_respaldada.tgz
USERNAME=$1
TODAY=`date`
LOGFILE="/mnt/backup/log/backuplog.txt"
echo $TODAY >> $LOGFILE
echo $USERNAME >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME gms >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME getRestURL "//?fmt=tgz" > /mnt/backup/cuentas/$USERNAME.tgz
echo --------------------- >> $LOGFILE
El export es el script de exportación de las cuentas podemos usar export.sh y pasarle como primer parámetro una cuenta y nos la exportara a un comprimido tgz en la ruta que se especifica, /mnt/backup/cuentas/ que si lo cambiamos por una ruta montada de otro ordenador ya exporta fuera del equipo.
mizimbrabackup.sh
#!/bin/bash
# Toma la lista de todas las cuentas y crea un script para
# ejecutarlo imediatamente. El baccount.sh script con las direcciones de email
# para usalor como un comando.
#usa zmaccts y extrae todas las cuentas de correo, solo las direcciones de email no alias ni direcciones reenvio
#Le concatena el "/mnt/backup/./export.sh" string por cada cuenta y escribe en el fichero,
su - zimbra -c "zmaccts" | grep "@" | awk '{print "/mnt/backup/./export.sh " $1}' > /mnt/backup/accountbackup.sh
# cambia los permisos al nuevo script creado y lo ejecuta.
chmod 755 /mnt/backup/cuenta/accountbackup.sh
# ejecuta el nuevo script. - podemos comentar la siguiente linea para nosotros revisar
# las cuentas que se van a exportar y borrar las que no queramos y ejecutarlo despues.
#./accountbackup.sh
# Toma la lista de todas las cuentas y crea un script para
# ejecutarlo imediatamente. El baccount.sh script con las direcciones de email
# para usalor como un comando.
#usa zmaccts y extrae todas las cuentas de correo, solo las direcciones de email no alias ni direcciones reenvio
#Le concatena el "/mnt/backup/./export.sh
su - zimbra -c "zmaccts" | grep "@" | awk '{print "/mnt/backup/./export.sh " $1}' > /mnt/backup/accountbackup.sh
# cambia los permisos al nuevo script creado y lo ejecuta.
# ejecuta el nuevo script. - podemos comentar la siguiente linea para nosotros revisar
#./accountbackup.sh
Como dicen los comentarios dentro del script este mizimbrabackup.sh crea un script accountbackup.sh que no es más que una llamada al export pasando como parametro las direcciones de correo.
Pd: Si se te ocurre alguna mejora comentala y mejoramos el script.
lo que se podría es hacer que a través de este comando (zmprov -l gaa NombreDominio) que me retorna todos los correos activos del servidor zimbra, es realizar como un ciclo para que solo colocando el dominio el haga uno todo el respaldo general sin estas ecribiendo 1 por 1 las cuentas del servidor, voy a ver si lo puedo hacer, te aviso luego.
ResponderEliminarEsta seria una version mejorada solo es guardar el en un archivo exportar.sh y para ejecutarla #sh exportar.sh TUDOMINIO
ResponderEliminar#!/bin/bash
DOMINIO=$1
TODAY=`date`
LOGFILE="/mnt/backup/log/backuplog.txt"
for correo in $(/opt/zimbra/bin/zmprov -l gaa $DOMINIO)
do
tam=${#correo}
posi=$(expr index "$correo" @)
usua=${correo:0:$posi-1}
USERNAME=$usua
echo $TODAY >> $LOGFILE
echo $USERNAME >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME gms >> $LOGFILE
/opt/zimbra/bin/zmmailbox -z -m $USERNAME getRestURL "//?fmt=tgz" > /mnt/backup/cuentas/$USERNAME.tgz
echo --------------------- >> $LOGFILE
echo Cuenta "$USERNAME" Respaldada
done
Para que el script no de error se debe dar permisos 755 al script y correr de la siguiente manera : #./exportar.sh TUDOMINIO
ResponderEliminarSí claro, eso es básico. Supongo que si estas administrando un servidor de correos en linux, tienes unos conocimientos básicos de linux ;)
Eliminarme gustaria saber como restauro ahora los correos q respalde
ResponderEliminarLo tenias al principio de todo antes de los script:
EliminarPara restaurar
zmmailbox -z -m cuenta@tu_dominio postRestURL "//?fmt=tgz&resolve=skip" cuenta_respaldada.tgz
aquí hay varios parámetros en caso de conflicto.
skip: solo importa lo que no este en la cuenta
modify: modifica el elemento viejo
replace: borra el elemento viejo y lo reemplaza
reset: borra todo y restaura lo que tenga el backup
Buenas tardes necesito restauran 500 cuentas de zimbra que las tengo respaldadas en fotmato.tgz a otro nuevo zimbra, existe algun script que me ayude para no hacerlo uno a uno
ResponderEliminarHola talvez algun scrip para generar respaldo total solo de las cuentas que esten cerradas o en mantenimiento. Gracias
ResponderEliminar