A continuación les dejo una forma sencilla de migrar cuentas de correo entre 2 servidores de correo utilizando para ello un script en perl creado por LinuxFrance pop2imap el cual posee entre sus ventajas: transferencias incrementales (solo descarga los mensajes que no estén en el servidor de destino) y que el mismo puede ser ejecutado desde un equipo distinto a los servidores de origen y destino. La gente de LinuxFrance también tiene otro script llamado imapsync que funciona de manera similar pero para IMAP.
Como una utilidad adicional les dejo este sencillo script en AWK que hice para leer los datos de un archivo csv y migrar las cuentas entre 2 servidores, espero les sea de utilidad. La estructura del archivo es: cuenta@origen;clave;cuenta@destino;clave
Yo estoy usando debian 7 así que las dependencia a instalar para mi distro son estas:
aptitude install libmail-pop3client-perl libmail-imapclient-perl libdigest-hmac-perl libemail-simple-perl libdate-manip-perlUna vez que tenemos instaladas las dependencia podemos extraer y ejecutar el script, para ello basta con ejecutar:
tar -xzvf pop2imap-1.18.tgz
Con lo cual se descomprime el archivo en la carpeta pop2imap-1.18
cd pop2imap-1.18
Ahora si estamos listos para migrar las cuentas.
Por ejemplo, si queremos sincronizar "cuenta1" en el servidor "origen.com" con "cuenta1" en el servidor "destino.com" se ejecutaria lo siguiente
./pop2imap --host1 origen.com --user1 cuenta1 --password1 clave --host2 destino.com --user2 cuenta1 --password2 claveUn dato interesante es que las cuentas de origen y destino no tiene porque ser iguales, es decir, se podría sincronizar una cuenta "correo1@algo.com" con otra totalmente diferente "test@prueba.com". Tambien es posible hacer otras cosas como borrar el correo de la cuenta origen al realizar la copia, vena pop2imap --help par mas detalles.
Como una utilidad adicional les dejo este sencillo script en AWK que hice para leer los datos de un archivo csv y migrar las cuentas entre 2 servidores, espero les sea de utilidad. La estructura del archivo es: cuenta@origen;clave;cuenta@destino;clave
#!/bin/shEspero que sea de utilidad.
ARCH="correos.csv"
awk '
BEGIN {
FS=";"
HOST1="mail.origen.com"
HOST2="mail.destino.com"
}
{
cmd="pop2imap-1.18/pop2imap --host1 "HOST1" --user1 "$1" --password1 "$2" --host2 "HOST2" --user2 "$3" --password2 "$4
#print cmd
if (system(cmd) != 0)
print "usuario=",$1,"[ERROR!]" > "migrar_error.log"
}' $ARCH
Comentarios