mbsync не получает/отправляет с [Gmail]/папками

Вопрос или проблема

Я переключился с offlineimap на mbsync, но у меня возникла проблема с синхронизацией некоторых директорий из Gmail. В частности, все директории [Gmail]/FolderName, похоже, игнорируются mbsync (когда я запускаю mbsync -l, он не перечисляет ни одну из них).

У меня есть настройка, как эта [отредактировано для показа полной настройки]:

Create Slave

# Детали учетной записи, необходимые для входа на удаленный сервер:
IMAPAccount GMAIL
Host imap.gmail.com
User [email protected]
Pass pass
UseIMAPS yes
# Сертификат органа, который подтвердил SSL сертификат вашего провайдера электронной почты:
CertificateFile /etc/ssl/certs/ca-certificates.crt

# Удаленное хранилище:
IMAPStore GMAIL-remote
Account GMAIL

# Локальное хранилище:
MaildirStore GMAIL-local
Path ~/Maildir/GMAIL/
Inbox ~/Maildir/GMAIL/INBOX
Trash ~/Maildir/GMAIL/[Gmail].Bin

# Канал, соединяющий два хранилища, описывающий способ синхронизации:
Channel GMAIL
Master :GMAIL-remote:
Slave :GMAIL-local:
Patterns  "[Gmail]/Sent Mail" "[Gmail]/Drafts" "[Gmail]/Bin" "[Gmail]/Spam" INBOX ARCHIVED
Create Slave
Expunge Both
SyncState * 

Что, по-видимому, соответствует примерам, которые я видел в сети.

Изменилось ли что-то в mbsync или Gmail, из-за чего mbsync игнорирует [Gmail]/Folders?

Проект называется isync. Согласно ArchLinux Wiki, существуют проблемы с mbsync и GMail. Есть сообщение, предлагающее использовать isync-git вместо.

отрывок

isync можно установить из AUR. Были сообщены некоторые проблемы при использовании GMail с версией 1.0.6. В этом случае вы можете попробовать isync-git.

Я также нашел эту тему, кажется, она несколько устарела (2008 год), поэтому всё может быть по-другому. Тема под названием: Re: Subfolders and Hierarchies. Согласно данной теме, [mbsync] не поддерживает GMail и вложенные папки.

Я очень заинтересован в использовании mbsync и mswatch. В настоящее время я использую ~/Maildir, который является INBOX и также содержит ~/Maildir/.foo.bar в виде maildir. Я читал, что у mbsync есть проблемы с иерархиями, и видел комментарии с рекомендацией прочитать архивы списков, но пока что я не могу в этом разобраться. 🙂 Я готов изменить свои привычки использования, просто не уверен, что сделать для синхронизации maildir ~/Maildir/.foo.bar. Может ли кто-нибудь помочь прояснить это?

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

Эта тема также касается проблем с вложенными папками, с которыми вы сталкиваетесь, под заголовком: offlineimap или mbsync?.

Компиляция isync

Автор попытался установить/скомпилировать это на системе на базе Ubuntu. Для компиляции вам нужно будет установить Berkley Data Base (BDB 4.2+). Необходимо установить заголовки библиотек для этого пакета, и он должен быть версии не ниже 4.2.

$ sudo apt-get install libdb5.3++-dev libdb5.3-dev

.

Ответ или решение

Если вы опытный специалист в области IT и столкнулись с проблемами, связанными с использованием mbsync для синхронизации директорий Gmail, включая подкаталоги [Gmail]/FolderName, важно рассматривать множество факторов, которые могут влиять на работу данной программы. Данный ответ предоставляет подробное объяснение возможных причин проблемы и потенциальные решения.

Теория (T): Основы и проблемы mbsync с Gmail

Mbsync, также известный как isync, — это утилита для синхронизации электронной почты, которая часто используется для работы с почтовыми серверами IMAP. Однако некоторые пользователи, переходящие с offlineimap на mbsync, сталкиваются с проблемами, когда mbsync не синхронизирует специфические каталоги, например [Gmail]/FolderName. Такая проблема может быть связана с несколькими аспектами: несовместимостью версии mbsync с Gmail, некорректным вызовом каналов (channels) синхронизации или использованием неверных шаблонов (patterns) для указания директорий.

Версии и совместимость

Совместимость mbsync с Gmail может варьироваться в зависимости от версии программного обеспечения. Согласно информации из ArchLinux Wiki, некоторые версии, такие как 1.0.6, имеют проблемы с Gmail. В таких случаях рекомендуется использовать актуальные версии, например, isync-git, доступные в AUR (Arch User Repository), которые могут содержать исправления и улучшения функционала синхронизации с Gmail.

Пример (E): Настройка и описание конфигурации

Рассмотрим данную конфигурацию:

Create Slave

# Учетные данные для подключения к удаленному серверу:
IMAPAccount GMAIL
Host imap.gmail.com
User [email protected]
Pass pass
UseIMAPS yes
CertificateFile /etc/ssl/certs/ca-certificates.crt

# Удаленное хранилище:
IMAPStore GMAIL-remote
Account GMAIL

# Локальное хранилище:
MaildirStore GMAIL-local
Path ~/Maildir/GMAIL/
Inbox ~/Maildir/GMAIL/INBOX
Trash ~/Maildir/GMAIL/[Gmail].Bin

# Канал, соединяющий два хранилища и описывающий метод их синхронизации:
Channel GMAIL
Master :GMAIL-remote:
Slave :GMAIL-local:
Patterns "[Gmail]/Sent Mail" "[Gmail]/Drafts" "[Gmail]/Bin" "[Gmail]/Spam" INBOX ARCHIVED
Create Slave
Expunge Both
SyncState * 

Описание:

  1. IMAPAccount GMAIL: Задает учетные данные для входа в учетную запись Gmail.
  2. CertificateFile: Указывает файл сертификата, используемый для проверки связи по SSL.
  3. IMAPStore и MaildirStore: Устанавливают удаленные и локальные хранилища, соответственно.
  4. Channel GMAIL: Определяет конфигурацию канала для синхронизации, включая указание шаблонов (Patterns) директорий для синхронизации.

Применение (A): Рекомендации и исправления

  1. Проверьте версии mbsync: Убедитесь, что вы используете актуальную версию mbsync или isync-git из AUR, которая может содержать исправления для работы с Gmail.

  2. Шаблоны папок (Patterns): Убедитесь, что все целевые папки в шаблоне указаны правильно. Например, учитывайте, что в некоторых конфигурациях папки могут не показываться, если символы, такие как слэши (/), не интерпретируются должным образом. Попробуйте изменить шаблон на:

    Patterns "INBOX" "Sent Mail" "Drafts" "Bin" "Spam"
  3. Отдельные каналы для каждой папки: Если существует проблема с поддиректориями, попробуйте создать отдельные каналы для каждой папки, чтобы минимизировать сложность конфигурации.

  4. Использование флага логирования (-l): При запуске команды mbsync -l вы не видите директории [Gmail]/FolderName. Попробуйте изменить уровень детализации логирования для получения более подробной информации о том, что именно происходит во время синхронизации.

  5. Обновление сертификатов: Убедитесь, что у вас актуальные сертификаты, указанные в CertificateFile. Иногда проблемы могут возникать из-за устаревших сертификатов или неверных путей к ним.

  6. Тестирование на другом устройстве: Если проблема сохраняется, попробуйте протестировать ту же конфигурацию на другой машине или с использованием новой учетной записи Gmail, чтобы проверить, не связана ли проблема с конкретной установкой или учетной записью.

Заключение: использование mbsync для синхронизации Gmail может вызывать определенные сложности, особенно в каждом индивидуальном случае настроек или версий. Однако следуя вышеуказанным рекомендациям и используя актуальные и правильные конфигурации, можно значительно повысить вероятность успешной синхронизации директорий Gmail.

Оцените материал
Добавить комментарий

Капча загружается...