Назад | Перейти на главную страницу

Как перенести небольшую группу пользователей с одного почтового сервера на другой

Вот моя ситуация:

У меня есть почтовый сервер, назовем его mail1.site.com. И я хочу создать новый почтовый сервер mail2.site.com и перенести на него всех пользователей. Настройка Postfix + Dovecot на обоих. Обычно, если это только я, я просто настраиваю новый сервер, захожу в свой почтовый клиент и перетаскиваю свои сообщения, и он перемещает мои сообщения таким образом. Но если у меня есть несколько пользователей, я не могу ожидать, что все они будут достаточно сообразительными, чтобы сделать это для каждой папки в своей учетной записи.

Есть ли у кого-нибудь советы, как мигрировать? Безопасно ли tar все тысячи писем в /var/vmail а затем просто переместите это и распакуйте? Я открыт для предложений.

У Dovecot есть удобный инструмент под названием dsync (вики) предназначен для синхронизации двух экземпляров dovecot. Иерархия Maildir с одного сервера реплицируется на другой. Получено, отправлено, спам, корзина - все скопировано. Главное преимущество в том, что dsync может выполнять инкрементную и двустороннюю репликацию. После того, как начальное копирование выполнено, при следующем запуске скопируйте только новые / измененные файлы. И неважно, где произошли изменения - dsync определить, какой экземпляр обновлен.

Можно ли перенести все это за один этап с простоями службы?
Если да, вы можете tar / untar. Но лучший способ - это почтовый ящик rsync на лету, а во время простоя службы вы снова выполните rsync для обновления.

посмотрите на mailqueue, это должно быть пусто. smtp не должен принимать почту во время простоя. но обычно у вас другая ситуация. почтовая очередь хранит электронную почту, которую нельзя отправить. вы можете просмотреть это письмо. вы решаете оставить это письмо или перейти на новый сервер. Я нашел здесь процедуру: http://abhijit.name/articles/configuration/moving_or_restoring_postfix_queue.html

копирование почтовых ящиков на лету имеет одно преимущество. вы можете молча протестировать для указанного пользователя, все в порядке или нет. вы увидите перемещенный почтовый ящик или нет.

внимательно прочтите руководство по rsync. протестируйте его для одного почтового ящика, он синхронизирует только необходимую информацию или перепишет всю. используйте правильные варианты.

Хуже того, когда вы не можете выполнить какую-либо услугу поломки, тогда вам следует переносить почтовые ящики пользователя за пользователем. Затем вам следует подготовить псевдонимы для обоих серверов. Оба должны принимать электронные письма для обоих имен, но внутренне перенаправлять электронную почту на соответствующий сервер, используя поведение псевдонимов. Когда вы будете переносить пользователя lat, вы должны указать MX только на новый сервер и подождать, пока почтовая очередь на старом не опустеет, и выключить его.

Если вы никогда этого не делали, лучше проведите какие-либо тесты на любой виртуальной копии с некоторым набором почтовых ящиков. тогда вы увеличите шанс, никто не посетит вас с острой вилкой и горящим факелом :)