Короче: знает ли кто-нибудь пошаговое руководство по переносу данных maildir с одной голубятни на другую?
Короче: Я пытаюсь перенести свой почтовый сервер на новую машину.
Сначала я попытался просто tar & rsync мой единственный каталог maildir но все подпапки были затенены в thunderbird .
Я подумал, что сделаю это снова с помощью doveadm sync, но теперь я просто не нашел четкого пути, как это сделать с помощью руководства dovecot , google или serverfault.
Неужели еще нет простого пошагового руководства, чтобы сделать это? Или это слишком просто, и я этого не понимаю? В руководстве недостаточно объяснений для такого новичка, как я.
Я начал с doveadm backup -u me@domain.tld... Он сообщает мне
doveadm (root): Ошибка: Пользователь не существует . Но
doveadm user * @ domain.tld` возвращает именно этого пользователя. Теперь я наткнулся на пункт ниже, поэтому пока не пытаюсь разобраться в этой проблеме:
Поскольку у меня уже есть данные, синхронизированные с моей новой машиной, я попробовал следующее. Я запустил контейнер докеров без открытых портов, поэтому dovecot запущен, но никто не может подключиться к postfix или dovecot. Я подключился к консоли контейнера и попробовал импорт doveadm. Получены проблемы с отказом в разрешении. Пробовал с разрешениями, установленными на 777. doveadm import завершен, не сообщая мне о каких-либо проблемах, но каталог пользователя все еще пуст (только стандартные папки без писем)
Причина, по которой мне не удалось найти хорошее руководство по копированию dovecot <-> dovecot, заключалась в том, что есть простой и более общий способ сделать это imap <-> imap. (Например ImapSync Спасибо, Свен за ваш комментарий к моему вопросу.)
ImapSync: Я сделал это таким образом.
Необходимые зависимости для сборки
apt-get install makepasswd rcs perl-doc libio-tee-perl git libmail-imapclient-perl libdigest-md5-file-perl libterm-readkey-perl libfile-copy-recursive-perl build-essential make automake libunicode-string-perl libauthen-ntlm-perl libcrypt-ssleay-perl libdigest-hmac-perl libfile-copy-recursive-perl libio-compress-perl libio-socket-inet6-perl libio-socket-ssl-perl libio-tee-perl libmodule-scandeps-perl libnet-ssleay-perl libpar-packer-perl libreadonly-perl libterm-readkey-perl libtest-pod-perl libtest-simple-perl libunicode-string-perl liburi-perl cpanminus
модулей CPAN (CPAN = Comprehensive Perl Archive Network)
cpanm JSON::WebToken Test::MockObject Unicode::String Data::Uniqid
Затем получите код imapsync с github и выполните сборку с make install
По завершении использовать его так же просто, как
imapsync \
--host1 test1.lamiral.info --user1 test1 --password1 secret1 \
--host2 test2.lamiral.info --user2 test2 --password2 secret2
Подробнее здесь
Я перешел с Postfix + courier + mysql на основе Wheezy на Stretch (postfix + mysql + dovecot) со слегка обновленной конфигурацией и несколькими новыми параметрами при новой установке.
Ключом к моей миграции было то, что все пользователи были виртуальными (через таблицы mysql), и вся почта хранилась в / home / vmail / domain / user / [различных почтовых сообщениях]
Новая система имеет аналогичную структуру для почтовых служб, прямо под / var / vmail / domain / user вместо / home / vmail ...
Единственная уловка заключалась в копировании файлов и обеспечении правильного владения и других разрешений в новом месте.
вы МОЖЕТЕ использовать imapsync на самом деле ... но это не помогло мне из-за какой-то непонятной ошибки.
rsync - НЕ хорошая идея ... потому что dovecot / thunderbird / icedove не восстанавливает структуру индексных файлов / папок.
решение на самом деле простое: используйте thunderbird / icedove для своего почтового клиента!
PS: Спасибо, что проголосовали за мой последний пост об улучшении и удалили "ура". эта платформа - отстой. я действительно думаю о бойкоте.
hostnamectl
Static hostname: debian
Icon name: computer-vm
Virtualization: oracle
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-6-amd64
Architecture: x86-64
попробовал это сегодня ИМХО думаю, что тоже не хватает:
apt install libssl-dev
затем жалуется:
Here is a cpanm command to install missing Perl modules:
cpanm "Crypt::OpenSSL::RSA Dist::CheckConflicts JSON::WebToken::Crypt::RSA Regexp::Common Sys::MemInfo"
Makefile:99: recipe for target 'testp' failed
make: *** [testp] Error 1
Итак, я попробовал:
cpanm Crypt::OpenSSL::RSA Dist::CheckConflicts JSON::WebToken::Crypt::RSA Regexp::Common Sys::MemInfo
, затем сработала команда make install:
imapsync -v
1.882