5

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

Будучи IMAP, вся моя почта хранится локально, кроме того, на почтовом сервере, поэтому я подумал, что Thunderbird может позволить мне создать IMAP account_new и затем перенести содержимое моего профиля ~/.thunderbird на IMAP-сервер account_new. Также обратите внимание, что IMAP account_old теперь не в сети.

Мой поиск в Google ничего не дал по этому подходу, и вместо этого пользователям, похоже, приходится кропотливо копировать почту (щелкнув правой кнопкой мыши по папке> Копировать в > относительный /thunderbird / путь), папку за папкой, из одной учетной записи в другую. Я делал это, пока не обнаружил, что в какой-то момент вложения перестали корректно копироваться (но это было, когда я запустил процесс). В частности, контейнер вложенных файлов копируется, но содержимое кажется отсутствующим, поскольку при попытке открыть его возвращается ошибка * . Та же проблема возникает при использовании функции « Переместить в» для отдельных элементов почты. Сейчас мне интересно, мешает ли DavMail (для учетной записи Exchange, которую я использую) копировать вложения с помощью этого подхода.

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

Не менее, я хотел бы знать, нет ли более надежного и менее трудоемкого способа загрузки всего локального содержимого учетной записи на сервер IMAP с полной структурой дерева и метаданными (fwd, reply, теги и т.д.)? Я использую Thunderbird v17.0 на Ubuntu 12.04, 64bit, DavMail 4.1.0.

РЕДАКТИРОВАТЬ: я вижу, что imapsync должен делать эту работу. Есть ли какие-либо комментарии к этому подходу, т.е. правильно ли синхронизированы метаданные и вложения?

3 ответа3

3

Альтернативой является использование mbsync из проекта isync. Вот пример конфигурации для синхронизации почты с одного сервера IMAP напрямую на другой:

# The IMAP server you wish to copy mails from.
IMAPAccount imap-src-account
Host imap.host.ac.uk
User student0192
# Pass "xxxxx" # if you don't mind storing it in the file; otherwise will prompt
UseIMAPS yes
CertificateFile /etc/ssl/certs/ca-certificates.crt

 # The IMAP server you wish to copy mails to.
IMAPAccount imap-dest-account
Host zimbra.corporate.com
User worker@corporate.com
# Pass "xxxxx" # if you don't mind storing it in the file; otherwise will prompt
UseIMAPS yes
CertificateFile /etc/ssl/certs/ca-certificates.crt

 # Link IMAP server to remote used below
IMAPStore imap-src
Account imap-src-account

IMAPStore imap-dest
Account imap-dest-account

# ensures that dates of messages will be set correctly
CopyArrivalDate yes

Channel transfer
Master :imap-src:
Slave :imap-dest:
# Transfer all folders
Patterns *
Create Slave
Sync Pull
# important otherwise you will get 'Error: store ... does not support in-box sync state'
SyncState ~/.mail/imap-transfer

Затем вы можете запустить mbsync -l transfer чтобы просмотреть список почтовых папок, которые будут синхронизироваться.

Чтобы фактически запустить передачу, запустите mbsync transfer . Приятно то, что вы можете периодически запускать его, и он будет выполнять эффективную синхронизацию.

Дальнейшие заметки:

  • пароли: вы также можете указать PassCmd чтобы использовать другой метод получения пароля (например, из Token Ring).
  • резервные копии: большинство онлайн-инструкций для mbsync используют это для резервного копирования в локальную файловую систему. Вы даже можете сделать резервную копию в локальной файловой системе и затем отправить ее на новый сервер, как описано здесь, но это сложнее, чем необходимо, если вы просто хотите синхронизировать серверы
  • сопоставление папок: если вы хотите перенести папки в подпапку в целевой системе (как я это сделал), вы можете указать это, сказав Slave ":imap-dest:parent-folder/" в конфигурации Channel .
1

Imapsync - это инструмент, разработанный для синхронизации изображений, он синхронизирует:

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

Imapsync позволяет выполнять инкрементную синхронизацию, я называю их предварительной синхронизацией, для резервного копирования или ускорения окончательной синхронизации; он оценивает ETA на основе измеренной скорости передачи сообщений. Автор, Gilles Lamiral, продает его за 50 евро, но он доступен бесплатно на github.

0

TL; DR

Восстановите папку. PD: информация не теряется. Это здесь.

контекст

Я боялся, что это происходит со мной. Я нашел этот вопрос, потому что я начал "копировать" свои электронные письма с клиентами в моем туристическом агентстве во временную учетную запись, чтобы впоследствии импортировать их в базу данных для автоматической обработки в пользовательскую CRM ... и потеря вложенных файлов у клиентов не была вариант.

Я получил сообщение This attachment appears to be empty. Please check with the person who sent this. Often company firewalls or antivirus programs will destroy attachments. после удаления исходных сообщений я очень боялся ситуации.

И я очень, очень боялся, что потерял привязанность.

Итак, первое, что я хотел уточнить:

КРИТИЧЕСКИЙ ВОПРОС: Thunderbird теряет информацию при копировании писем? Или это просто правильно копирует, но потом не может прочитать?

  • Если Thunderbird потерял информацию, это полная проблема.
  • Если только он не может читать, нет проблем.

Что я сделал, чтобы решить мой критический вопрос

а) Сначала я посмотрел исходный код сообщения. Это ДЕЙСТВИТЕЛЬНО имело "некоторый" контент. Граница, затем прикрепленный файл.

Исходный код письма

Я все еще не знал, было ли содержание правильным или поврежденным.

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

в) Затем я щелкнул правой кнопкой мыши, чтобы сохранить вложение. Как только вложение было сохранено, я открыл его (это был файл Excel в этом случае), и Excel открыл его хорошо. Итак, первый вывод: информация внутри вложения не теряется

d) Затем я открыл вложение напрямую, открыв его из окна электронной почты (опять же: не из IMAP, а просто просматривая в Thunderbird файл .eml на рабочем столе), и оно открылось правильно. Итак, второй вывод: источник сообщения не портит информацию для двойного щелчка и открытия вложенного файла.

Ответ (что у меня сработало)

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

Но Thunderbird иногда нуждается в небольшой помощи. Он "кэширует" некоторые данные, чтобы избежать подключения к серверу IMAP каждый раз, и по любой причине IDK время от времени эта информация может быть повреждена.

Есть способ решить эту проблему:

1) Щелкните правой кнопкой мыши свою папку и выберите "Свойства" в тревожной папке.

Выберите свойства

2) Выберите "Ремонт". Это лишает законной силы кэшированные метаданные о содержащихся в них сообщениях и, следовательно, вынуждает повторно загружать файлы исходного кода, которые содержат заголовки и тело сообщений, и повторно интерпретировать сам контент.

Восстановить папку

Это сработало для меня. Теперь я выбираю то же сообщение, открываю вложение и больше не получаю. This attachment appears to be empty. сообщение.

Надеюсь помочь!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .