gmail 2 zimbra

Задача: обеспечить дешевую почту конторе в которой работает более 100 человек и чтоб много места и чтоб "подсматривать" было можно.

Я лет около 3 назад для себя все решил. Zimbra - наше все. Функционал богатейший, интерфейс легкий и понятный. В общем сказка! Пара команд в консольке и почтовик работает! Но на этот раз все было несколько сложнее... Контора передовая и уже давно пользуется Google Apps для организации корпоративной почты. В связи с этим писем в ящиках - дикое количество. Терять письма никак нельзя. Надо переносить.

Поехали!

Надо для начала установить imapsync. Манов в этих ваших интернетах полно - сами поставите. Тут проблем нет.

Проблемы (вернее сказать тонкости) будут когда Вы прочтете что-то типа этого и решив, что все просто скопипастите код со страницы и попробуете исполнить. Тут Вас ждет ошибка открытия соединения с imap.google.com. Исправить просто! надо только заменить imap.google.com на imap.gmail.com

Далее

1. Аккаунт в зимбре должен быть создан

2. Создали аккаунт, присвоили пароль, галочку "Требовать смены пароля" НЕ СТАВИМ! Если поставите, то при попытке синхронизироваться увидите ошибку "Требуется сменить пароль".

3. Попросите пользователей почистить свою почту. Перетаскивать >7000 писем, 6800 из которых - это уведомления с avito.ru о подаче объявления - это реально долго!

На всякий случай вот правильные файлики

__________________________________________

migration.sh

#!/bin/bash #Имя файла с логами LOG="imapsync.log" #Брать инфу из файла "users" for i in `cat users` do     login1=`echo ${i} | awk -F: '{print $1}'`     password1=`echo ${i} | awk -F: '{print $2}'`     host1=`echo ${i} | awk -F: '{print $3}'`     login2=`echo ${i} | awk -F: '{print $4}'`     password2=`echo ${i} | awk -F: '{print $5}'`     host2=`echo ${i} | awk -F: '{print $6}'`     echo "-------------------" >> ${LOG}     echo "LOGIN1: ${login1}" >> ${LOG}     echo "PASSWORD1: ${password1}" >> ${LOG}     echo "HOST1: ${host1}" >> ${LOG}     echo "LOGIN2: ${login2}" >> ${LOG}     echo "PASSWORD2: ${password2}" >> ${LOG}     echo "HOST2: ${host2}" >> ${LOG} #write password     echo "${password1}" > pass1     echo "${password2}" > pass2 #run sync
#Можете написать полный путь к imapsync, но у меня так работает нормально.
     imapsync --authmech1 LOGIN --maxsize 52428800 --buffersize 52428800 --host1 ${host1} --user1 ${login1} --passfile1 pass1 -ssl1 -port1 993 --host2 ${host2} --user2 ${login2}  --passfile2 pass2 -ssl2 -port2 993 --authmech2 LOGIN  --fast --nofoldersizes --useheader Message-Id --noauthmd5 --skipsize --allow3xx --allowsizemismatch done 

______________________________________________

users

#Тут просто

test@example.net:examplepass1:imap.gmail.com:test@example.net:examplepass2:localhost
test2@example.net:examplepass1:imap.gmail.com:test@example.net:examplepass2:localhost

...

testN@example.net:examplepass1:imap.gmail.com:test@example.net:examplepass2:localhost