Sincronizando contas do Zimbra para Zimbra usando o ImapSync e conta ADMIN

De Wiki Hackstore

Ajustes no Zimbra

Aumente o tamanho máximo dos anexos de email:

zmprov mcf zimbraFileUploadMaxSize 50000000

ou para zimbra acima da versão 5.0.6:

zmprov mcf zimbraMtaMaxMessageSize 50000000

Instalando dependências

yum install perl-YAML
yum install perl-Mail-DKIM
yum install perl-IO-Socket-SSL
yum install perl-TermReadKey
yum install perl-Date-Manip
yum install perl-MailTools
yum install perl-Parse-RecDescent
yum install perl-CPAN
yum install perl-Test-Simple
perl -MCPAN -e 'install Test::More'

Caso ocorra erro de compilação via cpan, tente um pacote RPM:

wget ftp://rpmfind.net/linux/dag/redhat/el6/en/x86_64/dag/RPMS/perl-Mail-IMAPClient-3.23-1.el6.rf.noarch.rpm
wget http://pkgs.repoforge.org/imapsync/imapsync-1.350-1.el6.rf.noarch.rpm
rpm -Uhv perl-Mail-IMAPClient-3.23-1.el6.rf.noarch.rpm 
rpm -Uvh imapsync-1.350-1.el6.rf.noarch.rpm

Script de sincronização

#!/bin/bash                                                                                                                                                                                                                                  

LISTA="/root/lista.txt"
LISTA_TMP="/tmp/lista"
HOST_ORIGEM="10.10.10.50" # old server
HOST_DESTINO="10.10.10.88" # new server

senha1="senhaantiga"
senha2="senhanova"

cat ${LISTA}|grep -v "^#" | sed '/^ *$/d' > ${LISTA_TMP}

while read usuario;do
echo -e "\n\nsincronizando conta ${usuario}...\n\n"
imapsync --noauthmd5 --buffersize 8192000 --nosyncacls --subscribe --syncinternaldates \
--authmech1 PLAIN --ssl1 --port1 993 --host1 ${HOST_ORIGEM} --user1 "${usuario}@hackstore.com.br" --authuser1 admin@hackstore.com.br --password1 "${senha1}" --sep1 "/" --prefix1 "" \
--authmech2 PLAIN --ssl2 --port2 993 --host2 ${HOST_DESTINO} --user2 "${usuario}@hackstore.com.br" --authuser2 admin@hackstore.com.br --password2 "${senha2}"
done < ${LISTA_TMP}