Передача большого количества сообщений между учетными записями IMAP

11

Мне нужно перенести много, много писем (более тысячи) от старого хостинга IMAP к новому провайдеру IMAP. Я знаю, что могу просто настроить старые и новые учетные записи в Thunderbird и перетаскивать их, но это очень медленно и время ожидания истекает. Существует ли лучший, более автоматизированный способ копирования всех сообщений (и всех почтовых ящиков) между серверами IMAP?

мистифицировать
источник

Ответы:

8

Есть несколько вариантов, которые вы можете попробовать:

Сатьяджит Бхат
источник
Google Apps Migration - это хороший инструмент, особенно с продуктами Google!
JDuarteDJ
Wit Google Apps Также обратите внимание, что вам необходимо настроить авторизацию с новым «консольным» проектом в Google.
JDuarteDJ
9

IMAPSync - это инструмент, который вы ищете. IMAPSync

В FAQ много хороших примеров

Davo
источник
На linux он также упакован во многие дистрибутивы.
ETL
Запрашивает оплату сейчас :(
JDuarteDJ
@JDuarteDJ На самом деле проверить github.com/imapsync/imapsync
Swaroop CH
7

Используйте надежный Mutt ( http://www.mutt.org/ ).

  1. mutt -f imap://username@sourceimaphost/INBOX/folder
  2. Пометить выбранные сообщения t, или пометить все сообщения Tи введите ~A. (С помощью Tвы можете указать различные шаблоны ( http://www.mutt.org/doc/manual/manual-4.html#ss4.2 ).
  3. Переместите помеченные сообщения с помощью ;s(«сохранить») и введите imap://username@destimaphost/INBOX/folder. (Это помечает исходные сообщения как удаленные ( D); если вы не хотите этого, используйте ;Cвместо этого («copy»).)
  4. Вы можете повторить 2 и 3 по мере необходимости.
  5. Выход на q. Вы можете удалить удаленные сообщения.

Это позволяет перемещать папку из одной учетной записи в другую. Повторите это для нескольких папок.

musiphil
источник
1
Вы также можете использовать imaps:вместо imap:. Если usernameчасть уже содержит @(например, как в Google Apps), замените его на %40. Пример: imaps://username%40domain.com@imap.gmail.com/INBOX/folder.
Musiphil
Имеет версию для Windows (без Cygwin), но она ограничена.
JDuarteDJ
4

OfflineIMAP - это еще один вариант ( http://offlineimap.org/ ).

equaeghe
источник
Я не знал, что это может сделать синхронизацию тоже, но это происходит, и кажется стабильным. Отличная идея!
Крис
Нуждается в cygwin :( и python :(
JDuarteDJ
@JDuarteDJ: Вы отрицали по причинам, которые вы упомянули !? Учитывая, что вопрос не налагает ограничений на такие вещи, это было бы крайне неуместно.
Equaeghe
@equaeghe Мне жаль, что ты находишь это неуместным. Я обнаружил, что из вопроса можно понять, что решение должно быть максимально простым и прямым. Я приведу вам тот факт, что ни одна ОС не упоминается, поэтому, если рассматривать ОС Linux, эти ограничения не применяются, я не могу отменить ее, но, учитывая это, я бы сделал, если бы мог.
JDuarteDJ
0

Первоначально мы написали эту статью по вопросам миграции электронной почты: http://alloraconsulting.com/it-solutions/28-transferring-email-from-one-host-to-another

Эта статья довольно старая, но после многих лет периодических массовых миграций из IMAP в Exchange / IMAP лучше всего сработали решения с открытым исходным кодом, например:

https://sourceforge.net/projects/migrationtool/

Мартин
источник
0

Вы также можете использовать isync / mbsync . Просто использовал его (в течение нескольких дней, из-за ограничений квот, наложенных Google и (особенно) Apple) для копирования нескольких десятков тысяч писем из Gmail в iCloud. После копирования удаление писем со стороны GMail стало проще и быстрее (чтобы удалить все) через веб-интерфейс.

Для непрерывной повторной попытки (после отключения из-за ограничений квоты) до успешного копирования всего можно выполнить его как (bash):

$ while date +"%F %T Restarting..." && ! mbsync channel_name; do sleep 3600; done
spuk
источник