Gmail

Почему после переноса из Gmail писем стало вдвое больше

Человек переносит ящик на десять гигабайт, а на новом месте оказывается двадцать. Ничего не сломалось: Gmail показал одни и те же письма дважды, и перенос честно скопировал всё, что увидел.

У Gmail нет папок

Внутри Gmail письмо существует ровно в одном экземпляре, а ярлыки — это метки на нём. Письмо с тремя ярлыками — это одно письмо, показанное в трёх местах.

Протокол IMAP такого понятия не знает: в нём есть папки, и письмо лежит в папке. Чтобы показать ярлыки внешнему клиенту, Gmail выдаёт каждый ярлык как отдельную папку, а сверх того добавляет служебную папку «Вся почта», в которой лежит вообще всё.

Дальше арифметика простая. Любой инструмент переноса видит письмо в папке ярлыка и это же письмо во «Всей почте» — и копирует оба раза, потому что с точки зрения протокола это два разных письма в двух разных папках.

Как выглядит список папок Gmail по IMAP
* LIST (\HasNoChildren \All) "/" "[Gmail]/All Mail"
* LIST (\HasNoChildren \Trash) "/" "[Gmail]/Trash"
* LIST (\HasNoChildren \Junk) "/" "[Gmail]/Spam"
* LIST (\HasNoChildren) "/" "Клиенты"

Что с этим делать

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

Как оценить реальный объём заранее

Цифра в настройках Google — это место на аккаунте вместе с диском и фотографиями, для планирования переноса она почти бесполезна.

Правильнее посмотреть размеры папок по IMAP: сложите все папки, кроме «Всей почты», и вы получите объём с сохранением структуры; размер одной «Всей почты» — объём варианта «архивом». Разница между этими двумя числами и есть цена вопроса.

  1. Запустите режим подсчёта размеров папок, не начиная копирование.
  2. Сравните сумму пользовательских папок с размером «Вся почта».
  3. Выберите вариант и явно исключите лишние папки до старта, а не после.
  4. Сверьте счётчики писем по папкам после переноса.

Что ещё удивляет на Gmail

Письма из «Отправленных» в ящиках Gmail часто имеют и пользовательский ярлык — значит, приедут и туда и туда. Это тот же механизм.

Важные и Помеченные — тоже отдельные IMAP-папки, и это тоже копии. В подавляющем большинстве переносов их исключают вместе со спамом и корзиной.

FAQ

Частые вопросы

Можно ли перенести ярлыки Gmail как ярлыки?

Только если принимающая сторона тоже Gmail. В обычном IMAP ярлык становится папкой, и письмо с тремя ярлыками окажется в трёх папках.

Появятся ли дубли, если запустить перенос второй раз?

Нет. Повторный проход сверяет письма на приёмнике и копирует только недостающие.

Если исключить «Вся почта», потеряется ли архив?

Потеряются письма, у которых нет ни одного ярлыка и которых нет во «Входящих». Если архивом вы пользуетесь, переносите «Всю почту» и исключайте ярлыки.

Почему объём на новом месте всё равно отличается?

Провайдеры по-разному считают служебные данные и вложения. Сверять надо число писем по папкам, а не гигабайты.

Куда дальше

Перенести почту в MoveMailbox

Другие записи

Узнайте объём своего ящика. Это ничего не стоит.

Подключите два сервера, посмотрите размер и решайте. Или заберите клиент и держите всё у себя.

Код на GitHub · на базе imapsync · без регистрации