Назад | Перейти на главную страницу

Imapsync неправильно синхронизирует символы Юникода

Я использую imapsync чтобы перенести мою учетную запись электронной почты с почтового сервера CPanel (курьер) на сервер Debian / Dovecot. Проблема, с которой я столкнулся, связана с некоторыми папками, содержащими символы Unicode. Например, папка почтового ящика, содержащая греческие символы ιs, перенесена как INBOX.&A5QDtQO7A8QDrwOx- &A6QDzQPAA78DxQ-. Есть ли у кого-нибудь решение по этому поводу?

Строка «INBOX. & A5QDtQO7A8QDrwOx- & A6QDzQPAA78DxQ-» - это правильный код имени папки IMAP, представляющий то, что более удобное почтовое программное обеспечение могло бы представить как «INBOX.Δελτία Τύπου»

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

Во-вторых, если это действительно проблема, то эта проблема может возникнуть из-за того, что Dovecot не разрешает некоторые символы utf-8, закодированные в utf7_imap.

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

Чтобы решить эту проблему, в случае возникновения проблемы, вы можете попробовать переименовать папки в кодировку, более удобную для Dovecot, с помощью параметра imapsync --regextrans2.

Чтобы изменить "& A5QDtQO7A8QDrwOx- & A6QDzQPAA78DxQ-" на "Пресс-релизы"

imapsync ... --regextrans2 "s/&A5QDtQO7A8QDrwOx- &A6QDzQPAA78DxQ-/Press Releases/"

Чтобы помочь определить, какое фактическое имя папки соответствует коду utf7_imap, архив imapsync содержит скрипт imap_utf7. Вот пример его использования:

echo "INBOX.&A5QDtQO7A8QDrwOx- &A6QDzQPAA78DxQ-"  | ./W/learn/imap_utf7
INBOX.Δελτία Τύπου

(Я написал imapsync)

Может быть, вам стоит попробовать один из инструментов, которые предлагает сама dovecot. Взгляни на этот скрипт Perl или инструмент для сборки с именем dsync.