Как перенести почтовые ящики между серверами IMAP с помощью imapsync
На этой странице
- 1 Предварительное примечание
- 2 Прежде чем мы начнем
- 3 Установка imapsync
- 4 Миграция
- 5 ссылок
В этом руководстве объясняется, как можно перенести почтовые ящики между серверами IMAP с помощью imapsync. imapsync — это инструмент синхронизации, синхронизации, копирования или миграции IMAP. Успешно поддерживается более 32 различных серверных программ IMAP. Все флаги сохраняются, непрочитанные останутся непрочитанными, прочитанные останутся прочитанными, удаленные останутся удаленными.
1 Предварительное примечание
Здесь я использую два сервера Debian или Ubuntu (процедура должна быть такой же для других дистрибутивов, отличается только установка imapsync):
- server1.example.com (источник)
- server2.example.com (цель)
Я хочу перенести почтовый ящик [email на server2.example.com (имя пользователя и пароль такие же, как на server1.example.com).
2 Прежде чем мы начнем
Прежде чем мы начнем, давайте взглянем на оба почтовых ящика, чтобы увидеть, что в них (вы можете сделать это с помощью почтового клиента, такого как Outlook, Thunderbird, или почтового веб-клиента, такого как SquirrelMail — здесь я использую SquirrelMail).
После переноса два сообщения на server1.example.com должны быть доступны на server2.example.com.
3 Установка imapsync
Неважно, устанавливаем ли мы imapsync на сервер server1.example.com или server2.example.com — мы можем установить его даже на третий, не задействованный сервер.
aptitude install imapsync
Чтобы узнать о его использовании, взгляните на
man imapsync
и
imapsync --help
4 Выполнение миграции
Мы должны сообщить imapsync имена пользователей и пароли почтовых учетных записей, которые мы хотим перенести. Теоретически мы можем использовать ключи --password1 и --password2 для паролей, но это опасно, потому что пароли появятся в выводе
ps aux
(Таким образом, любой пользователь, которому разрешено запускать эту команду, будет знать пароли.)
Поэтому лучше создать два файла (/etc/secret1 и /etc/secret2 в этом примере), которые содержат пароли (в этом примере его секрет для обеих почтовых учетных записей), выполнить chmod 600 для этих файлов и использовать - Переключатели -passfile1 и --passfile2.
echo "secret" > /etc/secret1
echo "secret" > /etc/secret2
chmod 600 /etc/secret1
chmod 600 /etc/secret2
Теперь мы можем выполнить миграцию с помощью этой простой команды:
imapsync --host1 server1.example.com --user1 --passfile2 /etc/secret2
Вот пример вывода:
:~#
После этого мы можем удалить два файла паролей:
rm -f /etc/secret1
rm -f /etc/secret2
На целевом сервере (server2.example.com) выйдите из своей учетной записи IMAP и войдите снова (простого обновления может быть недостаточно), и вы должны увидеть сообщения от server1.example.com:
5 ссылок
- https://github.com/imapsync/imapsync
- https://imapsync.lamiral.info/