Миграция на Zimbra с постороннего почтовика
Для переноса почты с постороннего почтового провайдера к которому у вас нет доступа по ssh, можно использовать Perl утилиту imapsync
Сначала подготовим пакеты
apt-get install makepasswd rcs perl-doc libio-tee-perl git libmail-imapclient-perl libdigest-md5-file-perl libterm-readkey-perl libfile-copy-recursive-perl build-essential make automake libunicode-string-perl libio-socket-ip-perl ibio-tee-perl |
Для пущей убедительности можно поставит необходимые пакеты через CPAN
perl -MCPAN -e "install Mail::IMAPClient" perl -MCPAN -e "install Term::ReadKey" perl -MCPAN -e "install IO::Socket::SSL" perl -MCPAN -e "install Digest::HMAC_MD5" perl -MCPAN -e "install URI::Escape" perl -MCPAN -e "install File::Copy::Recursive" perl -MCPAN -e "install IO::Tee" perl -MCPAN -e "install Unicode::String" perl -MCPAN -e "install Data::Uniqid" perl -MCPAN -e "install Authen::NTLM" |
Клонируем репозиторий imapsync
git clone git://github.com/imapsync/imapsync.git |
Запускаем установщик
cd imapsync mkdir dist sudo make install |
Смотрим, что получилось
# imapsync -v 1.607 |
Запускаем процес переноса почты с одного сервера на другой
imapsync --host1 server1 -user1 user@server1 --password1 user1password --ssl1 --host2 server2 --user2 user@server2 --password2 user2password --ssl2 |
Из полезного:
можно исключить синхронизация некоторых папок доп. ключем
--exclude '^Junk\ E-Mail' --exclude '^Deleted\ Items' |
Ограничить кол-во запросов писем
--split1 100 --split2 100 |
Не сравнить размер писем на двух серверах
--allowsizemismatch |
Пишут, что этот ключ помогает если очень большие ящики
--useheader Message-ID |
Результат работы скрипта:
++++ Statistics Transfer started on : Thu Feb 26 16:08:53 2015 Transfer ended on : Thu Feb 26 16:18:25 2015 Transfer time : 572.5 sec Messages transferred : 1823 Messages skipped : 573 Messages found duplicate on host1 : 0 Messages found duplicate on host2 : 11 Messages void (noheader) on host1 : 0 Messages void (noheader) on host2 : 0 Messages deleted on host1 : 0 Messages deleted on host2 : 0 Total bytes transferred : 103844267 (99.034 MiB) Total bytes duplicate host1 : 0 (0.000 KiB) Total bytes duplicate host2 : 3215439 (3.066 MiB) Total bytes skipped : 166339343 (158.634 MiB) Total bytes error : 66975382 (63.873 MiB) Message rate : 3.2 messages/s Average bandwidth rate : 177.1 KiB/s Reconnections to host1 : 0 Reconnections to host2 : 0 Memory consumption : 311.9 MiB Biggest message : 22268713 bytes Initial difference host2 - host1 : -1441 messages, -3810091 bytes (-3.634 MiB) Final difference host2 - host1 : 380 messages, 100030535 bytes (95.397 MiB) Detected 4 errors |