Sunteți pe pagina 1din 9

Lic.

Eizon Delgado

Migración de cuentas de Zimbra a Zimbra

1.- Necesitas encontrar todos los dominios de tu servidor. Almacenaremos la lista de dominios
en un archivo llamado domains.txt. Es necesario realizar una copia de seguridad de toda la
lista de dominios de la siguiente manera.

zimbra@zimbra:~$ cd /backups/zmigrate
zimbra@zimbra:/backups/zmigrate$ zmprov gad > domains.txt
zimbra@zimbra:/backups/zmigrate$ cat domains.txt
fun.com
myserver.com
justfortest.com
checkit.com
dieanotherday.com
gnutest.com
foo.com
zimbra.foo.com
zimbra@zimbra:/backups/zmigrate$

2.- Encuentra todas las cuentas de administrador

La mayoría de los servidores tienen un solo administrador. Pero algunos servidores tienen

múltiples administradores. Así que será bueno encontrar todas las cuentas de

administrador. Almacenaremos la lista de administradores en admins.txt

zimbra@zimbra:/backups/zmigrate$ zmprov gaaa > admins.txt


zimbra@zimbra:/backups/zmigrate$ cat admins.txt
admin@foo.com
zimbra@zimbra:/backups/zmigrate

3.- Encuentra todas las cuentas de correo electrónico

El siguiente paso es encontrar todas las cuentas de correo electrónico alojadas en su antiguo

servidor. Obtenga una lista de sus cuentas de correo electrónico y guárdelas en el archivo

emails.txt. Entonces, desde este archivo podemos ver cuántas cuentas necesitan migrar.

zimbra@zimbra:/backups/zmigrate$ zmprov -l gaa > emails.txt


Lic. Eizon Delgado

zimbra@zimbra:/backups/zmigrate$ cat emails.txt


gm@fun.com
forest@fun.com
galsync@fun.com
fax@myserver.com
paul@myserver.com
angela@myserver.com
brooke@myserver.com
hnmobile1@myserver.com
maria@justfortest.com
samantha@justfortest.com
backupmail@justfortest.com
admin@checkit.com
sandra@checkit.com
zimbra@zimbra:/backups/zmigrate$

4.- Obtener todas las listas de distribución

Debe obtener toda la lista de distribuciones y almacenarla en un archivo llamado

distributinlist.txt.

zimbra@zimbra:~$ zmprov gadl > /backups/zmigrate/distributinlist.txt


zimbra@zimbra:~$ cat /backups/zmigrate/distributinlist.txt
budgetrtodomainusers@fun.com
healthnowdomainusers@myserver.com
checkit.comdomainusers@checkit.com
northpointessdomainusers@dieanotherday.com
parkatnorthhillsdomainusers@gnutest.com
zimbra@zimbra:~$
Lic. Eizon Delgado

5.- Obtener todos los miembros en listas de distribución

En este paso vamos a recopilar todos los miembros en cada una de estas

distribuciones. Crearemos una carpeta llamada distributinlist_members y crearemos un archivo

bajo esta carpeta llamada distributinlist.txt, luego almacenaremos todos los miembros de las

distribuciones.

zimbra@zimbra:~$ mkdir /backups/zmigrate/distributinlist_members


zimbra@zimbra:~$ for i in `cat /backups/zmigrate/distributinlist.txt`; do zmprov
gdlm $i > /backups/zmigrate/distributinlist_members/$i.txt ;echo "$i"; done
budgetrtodomainusers@fun.com
healthnowdomainusers@myserver.com
checkit.comdomainusers@checkit.com

6.- Encontrar todas las contraseñas de la cuenta de correo electrónico

Ahora necesita encontrar la contraseña cifrada de todas sus cuentas de correo electrónico

antiguas y almacenarla en una carpeta llamada userpass / de la siguiente manera:

zimbra@zimbra:/backups/zmigrate$ mkdir userpass


zimbra@zimbra:/backups/zmigrate$ for i in `cat emails.txt`; do zmprov -l ga $i u
serPassword | grep userPassword: | awk '{ print $2}' > userpass/$i.shadow; done

7,- Copia de seguridad de todos los nombres de usuario, nombres de visualización y


nombres de pila

Zimbra aceptará nombres de Nombres y Display en cuentas de correo electrónico durante la

creación de la cuenta. Así que necesitamos restaurar esos datos también. Crearemos un

directorio llamado userdata / que contiene estos detalles de cada una de esas cuentas de correo

electrónico.
Lic. Eizon Delgado

zimbra@zimbra:/backups/zmigrate$ mkdir userdata


zimbra@zimbra:/backups/zmigrate$ for i in `cat emails.txt`; do zmprov ga $i | g
rep -i Name: > userdata/$i.txt ; done

8.- Ahora copia de seguridad de todas las cuentas de correo electrónico

Esto tomará algún tiempo para realizar una copia de seguridad de todas las cuentas de correo

electrónico. Así que puedes ejecutar este comando detrás de "pantalla". Se creará un archivo

tgz con cada nombre de correo electrónico. Usaremos estos archivos para transferir cuentas de

correo electrónico.

zimbra@zimbra:/backups/zmigrate$ for email in `cat /backups/zmigrate/emails.txt`


; do zmmailbox -z -m $email getRestURL '/?fmt=tgz' > $email.tgz ; echo $email ;
done
gm@fun.com
forest@fun.com
galsync@fun.com
fax@myserver.com
fax2@myserver.com
paul@myserver.com

Este archivo tgz contiene

 Correo

 Contactos

 Calendarios

 Maletín

 Tareas

 Búsquedas

 Etiquetas

 Carpetas

9 Ahora alias de copia de seguridad


Lic. Eizon Delgado

Si tu correo contiene alias de correo electrónico para ciertas cuentas, copias esos alias

también. Crearemos una subcarpeta llamada alias / para almacenar la copia de seguridad de

Alias.

zimbra@zimbra:/backups/zmigrate$ mkdir -p alias/


zimbra@zimbra:/backups/zmigrate$ for i in `cat emails.txt`; do zmprov ga $i | g
rep zimbraMailAlias |awk '{print $2}' > alias/$i.txt ;echo $i ;done
gm@fun.com
forest@fun.com

Algunas de sus cuentas de correo electrónico no tienen alias. Así que los archivos creados

anteriormente pueden ser un archivo vacío. Eliminar esos archivos vacíos de la siguiente

manera, '\

zimbra@zimbra:/backups/zmigrate$ find alias/ -type f -empty | xargs -n1 rm -v

Restaurar en el nuevo servidor


Entonces, debemos restaurar esto en su nuevo servidor de la siguiente manera:

Todas estas operaciones deben ser realizadas como usuario zimbra. No utilice la cuenta de root

para almacenar las copias de seguridad.

[root@zimbra ~]# su - zimbra


[zimbra@zimbra]$

1 Restaurar todos los dominios

Ahora crea todos los dominios que tenemos desde el archivo /backups/zmigrate/domains.txt

(Esto no es necesario en nuestro caso).


Lic. Eizon Delgado

[zimbra@zimbra zmigrate]$ for i in `cat /backups/zmigrate/domains.txt `; do zmp


rov cd $i zimbraAuthMech zimbra ;echo $i ;done
2c86f244-de9d-4b7c-8e22-2246a8256219
myserver.com
dbf75058-d85e-4d60-8b69-1f148a456eb6
justfortest.com
ee90ffa2-505d-449f-82fd-129acb21cb5e
checkit.com
8b6bf287-f61e-4930-ada0-96b817292556
dieanotherday.com
17d3c73c-14f7-43aa-9fd2-c9be9e29c9e5

2 Crear cuentas de correo electrónico y establecer la contraseña antigua.

Para crear cuentas de correo electrónico y restaurar contraseñas. Por favor, use el siguiente

script para crearlo.

#!/bin/bash
#Scrit for creating the email accounts createacct.sh
USERPASS="/backups/zmigrate/userpass"
USERDDATA="/backups/zmigrate/userdata"
USERS="/backups/zmigrate/emails.txt"
for i in `cat $USERS`
do
givenName=$(grep givenName: $USERDDATA/$i.txt | cut -d ":" -f2)
displayName=$(grep displayName: $USERDDATA/$i.txt | cut -d ":" -f2)
shadowpass=$(cat $USERPASS/$i.shadow)
tmpPass="CHANGEme"
zmprov ca $i CHANGEme cn "$givenName" displayName "$displayName" givenName "$giv
enName"
zmprov ma $i userPassword "$shadowpass"
done
Lic. Eizon Delgado

3 Restaurar cuentas de correo electrónico

Ahora vamos a restaurar los correos electrónicos del archivo Zip. Este proceso puede tardar

algunas horas. Así que será bueno correr detrás del comando "pantalla".

[zimbra@zimbra zmigrate]$ for i in `cat /backups/zmigrate/emails.txt`; do zmmail


box -z -m $i postRestURL "/?fmt=tgz&resolve=skip" /backups/zmigrate/$i.tgz ; ec
ho "$i -- finished "; done
gm@fun.com -- finished
forest@fun.com -- finished

4 Ahora recrear las listas de distribución

Es hora de recrear todas las listas de distribución de la siguiente manera.

[zimbra@zimbra zmigrate]$ for i in `cat distributinlist.txt`; do zmprov cdl $i ;


echo "$i -- done " ; done
2a852fd8-6e66-426e-a76d-15192536042a
budgetrtodomainusers@fun.com -- done
a0f6ddb3-8525-4194-9397-6cf0a920dda6

5 Restaurar las listas de distribución.

Después de crear las listas de distribución, debemos agregar todos los miembros dentro de las

listas de distribución. Tenemos las listas de distribución en la carpeta distributinlist_members /

y la lista está en el archivo distributionlist.txt. Utilice el siguiente script pequeño para restaurar

las listas de distribución.

[zimbra@zimbra zmigrate]$ cat restoredist.sh


#!/bin/bash
# add all memebers to each of these distribution lists
for i in `cat distributinlist.txt`
do
for j in `grep -v '#' distributinlist_members/$i.txt |grep '@'`
do
Lic. Eizon Delgado

zmprov adlm $i $j
echo " $j member has been added to list $i"
done

done

6 Restaurar cuentas de alias

Utilice el siguiente script para restaurar el alias. Esto agregará todos los alias en sus cuentas de

correo electrónico.

#!/bin/bash
for i in `cat /backups/zmigrate/emails.txt`
do
if [ -f "alias/$i.txt" ]; then
for j in `grep '@' /backups/zmigrate/alias/$i.txt`
do
zmprov aaa $i $j
echo "$i HAS ALIAS $j --- Restored"
done
fi
done

NOTA: LOS DOMINIOS gm@fun.com forest@fun.com budgetrtodomainusers@fun.com,


SON COMO EJEMPLO.
Lic. Eizon Delgado

S-ar putea să vă placă și