#Что произошло и как распознать неисправность
После переноса почтовых ящиков на другой IMAP-сервер Outlook, Thunderbird или мобильный клиент снова загружает сотни старых сообщений. Иногда появляются локальные дубликаты, метки прочтения сбрасываются, а подписки на папки исчезают. Это не всегда повторная доставка: IMAP-клиент может воспринимать старые письма как новые из-за изменённых UID или UIDVALIDITY. У каждого сообщения в выбранной папке есть IMAP UID, а у папки — UIDVALIDITY. При миграции необходимо корректно сохранять их там, где это поддерживается; если они изменились, клиент вправе пересоздать локальный кеш. Не удаляйте серверные письма на основании локальных дубликатов.
#Причины и отличительные признаки
| Возможная причина | Как узнать | Что делать |
|---|---|---|
| Изменились UID/UIDVALIDITY после копированияСообщения перенесены как новые объекты, и IMAP-клиент не связывает их со старым кешем. | На новом сервере дублирующая загрузка происходит у нескольких клиентов одновременно. | Сопоставить миграционный метод и при наличии старой копии выполнить корректную синхронизацию. |
| На клиенте одновременно подключены старый и новый серверыСтарое и новое IMAP-подключение заведены как разные учётные записи. | Одна и та же папка показана дважды в дереве почты, а серверы в настройках отличаются. | Определить активную учётную запись и убрать неиспользуемую только после проверки сохранности. |
| Не перенесены подписки и флаги сообщенийСписок папок или флаги Seen/Answered изменились. | Письма появились в новых папках либо снова отмечены непрочитанными. | Сравнить метаданные и повторить перенос проверенным средством, не копируя вслепую. |
| Сбой локального кеша почтового клиентаНа сервере письма в одном экземпляре, а лишь один клиент показывает дубли. | В веб-почте дублей нет, другие устройства работают нормально. | Исправить/пересоздать кеш конкретного клиента после резервной копии локальных данных. |
#Пошаговая диагностика и исправление
- Не удаляйте дубликаты до проверки расположенияОткройте веб-почту на новом сервере и посчитайте письма в нескольких папках. Затем проверьте те же папки в настольном клиенте. Если веб-почта содержит 100 писем, а клиент показывает 200, проблема может быть в локальном отображении; если веб-почта также показывает 200, дубли уже находятся на сервере и требуют другого восстановления.
- Уточните старый и новый серверы в настройках учётной записиВ Thunderbird откройте «Настройки учётной записи» → «Параметры сервера» и запишите имя IMAP-сервера, порт и тип защиты соединения. В Outlook расположение зависит от версии: найдите настройки самой учётной записи, а не раздел отправки SMTP. Если старый сервер ещё доступен, не отключайте его до подтверждения успешного переноса всех папок.
- Сравните папки, размеры и статусыНа старом и новом веб-интерфейсе просмотрите число писем, даты крайних сообщений, папки «Отправленные», «Черновики» и собственные папки. Особое внимание уделите прочтению/пометкам и подпискам. Запишите расхождения. Если отсутствуют сообщения, первым действием должно быть восстановление копии, а не очистка кеша.
- Определите способ переноса и судьбу IMAP UIDЕсли используется Dovecot, прочитайте применимую к версии процедуру миграции и узнайте, переносились ли служебные индексы и идентификаторы. В официальной документации Dovecot указано, что при потере UID клиенты загружают письма как новые. Прямое копирование только файлов Maildir без учёта состояния сервера может изменить идентификаторы; прежде чем повторять перенос, сохраните обе версии ящика.
- Проверьте, повторная загрузка продолжается или уже закончиласьВ клиенте дождитесь окончания синхронизации небольшого тестового ящика; посмотрите, не начинается ли всё заново при следующем запуске. Запишите время и имя IMAP-сервера. Если повтор продолжается бесконечно, в журнале Dovecot/почтового сервера могут быть ошибки индекса или недоступности файлов; серверный администратор должен проверить их до очистки локальных хранилищ.
- При локальных дублях работайте только с копией профиляЗакройте почтовую программу и сделайте копию её профиля вместе с локальными папками. Только если веб-почта подтверждает, что сервер хранит по одному экземпляру и все сообщения доступны, рассмотрите штатное восстановление индекса/кеша для конкретного клиента по документации его версии. Не удаляйте файлы профиля наугад: локальные POP3-письма могут существовать только на компьютере.
- При дублях на сервере восстановите корректный источникЕсли копий письма две и в веб-почте, остановите автоматический повторный импорт и сделайте архив обеих копий ящика. Сравните Message-ID, дату и содержимое, учитывая, что один Message-ID не гарантирует идентичности всех писем. Затем через обслуживающего администратора согласуйте миграцию методом, поддерживающим флаги, UID и иерархию папок, либо точечную дедупликацию после резервного копирования.
- Проверьте на нескольких устройствах и завершите миграциюНа одном контрольном ящике откройте папку «Входящие» с компьютера и телефона, пометьте тестовое письмо прочитанным и убедитесь, что флаг синхронизируется. После этого повторно запустите клиент: повторной загрузки всей истории быть не должно. Лишь затем удаляйте устаревшую учётную запись, если вы точно убедились, что она не хранит уникальных локальных сообщений.
- Диагностическая команда для сервера DovecotLinux · Терминал (Bash)КомандаНужен sudoДиагностическая команда для сервера Dovecot. Показывает активные нестандартные параметры; требует прав на сервере и может включать чувствительные настройки, не публикуйте полный вывод. Ничего не меняет.
sudo doveconf -n
#Как проверить результат и что делать при неуспехе
Исправление подтверждено совпадением числа писем на сервере и клиентах, сохранностью папок и флагов, отсутствием повторной массовой загрузки при повторном входе. При невозможности сохранить прежние UID единичная повторная загрузка может быть ожидаемой — важно убедиться, что она конечна и не уничтожает данные.