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
[email protected] 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
[email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] [email protected] 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
[email protected] [email protected] [email protected] [email protected] [email protected] 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
[email protected] [email protected] [email protected]
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 rep -i Name: > userdata/$i.txt ; done
| g
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
[email protected] [email protected] [email protected] [email protected] [email protected] [email protected]
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 rep zimbraMailAlias |awk '{print $2}' > alias/$i.txt ;echo $i ;done
$i | g
[email protected] [email protected]
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 rov cd $i zimbraAuthMech zimbra ;echo $i ;done
zmp
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
[email protected] -- finished
[email protected] -- 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
[email protected] -- 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
[email protected] [email protected] SON COMO EJEMPLO.
[email protected],
Lic. Eizon Delgado