Синхронизация IMAP

Устанвока

apt install -y            \
  libauthen-ntlm-perl     \
  libcgi-pm-perl          \
  libcrypt-openssl-rsa-perl   \
  libdata-uniqid-perl         \
  libencode-imaputf7-perl     \
  libfile-copy-recursive-perl \
  libfile-tail-perl        \
  libio-socket-inet6-perl  \
  libio-socket-ssl-perl    \
  libio-tee-perl           \
  libhtml-parser-perl      \
  libjson-webtoken-perl    \
  libmail-imapclient-perl  \
  libparse-recdescent-perl \
  libmodule-scandeps-perl  \
  libreadonly-perl         \
  libregexp-common-perl    \
  libsys-meminfo-perl      \
  libterm-readkey-perl     \
  libtest-mockobject-perl  \
  libtest-pod-perl         \
  libunicode-string-perl   \
  liburi-perl              \
  libwww-perl              \
  libtest-nowarnings-perl  \
  libtest-deep-perl        \
  libtest-warn-perl        \
  make                     \
  time                     \
  cpanminus

Скачиваем файл утилиты и устанавливаем утилите права на запуск

wget -N https://raw.githubusercontent.com/imapsync/imapsync/master/imapsync

chmod +x imapsync

Запустим и проверим установлены ли все зависимости

./imapsync –testslive

cp imapsync /usr/local/bin/

Синхронизировать почту

imapsync \
       --host1 server1.oldmail.com --user1 server1@server1.oldmail.com --password1 server1password \
       --host2 server2.newmail.com --user2 server2@server2.newmail.com --password2 server2password

server1.oldmail.com — доменное имя нашего старого почтового сервера

server1@server1.oldmail.com — почтовый ящик который мы переносим

server1password — пароль от почтового ящика server1@server1.oldmail.com

server2.newmail.com -доменное имя нашего нового почтового сервера

server2@server2.newmail.com — почтовый ящик на который мы переносим все письма с нашего старого ящика

server2password — пароль от нашего нового почтового ящика

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

В imapsync доступны дополнительные параметры

—delete1 — удалением всех писем и папок с сервера источника

—delete2 — удалением писем, которых нет на сервере источнике, с сервера на который переносится почта. Полезно при пересинхронизации почтовых аккаунтов

—maxsize — пропускать синхронизацию писем которые превышают заданный размер

—minsize — не синхронизировать письма которая меньше заданного размера

—folder — синхронизация определенной директории

—maxage — не синхронизировать письма которые пришли раньше чем указанное количество дней.

По такому же принципу работает команда —minage