Skip to content

IMAP Postfach mit imapsync synchronisieren

Bevor wir imapsync installieren müssen wir folgende Debian Packages installieren.

apt install -y                \
  wget                        \
  git                         \
  lsb-release                 \
  libauthen-ntlm-perl         \
  libdist-checkconflicts-perl \
  libpar-packer-perl          \
  libtest-requires-perl       \
  libtest-fatal-perl          \
  libtest-mock-guard-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                        \
  cpanminus

imapsync installieren wir über Download des Packetes. Es gibt noch eine Version mit dem clonen des Git Repositoys https://github.com/imapsync/imapsync.git und mit make install zu installieren.

wget -N https://imapsync.lamiral.info/imapsync -O /usr/bin/imapsync && chmod +x /usr/bin/imapsync

Die installierte Version lassen wir uns mit der Option --version anzeigen.

imapsync --version
2.178

Mit der Option --tests können wir prüfen ob das Paket korrekt installiert wurde. Wenn wir nach dem ausführen den exit Code 0 erhalten, ist alles OK.

imapsync --tests && echo $?

Mit folgenden Befehl kopieren wir das IMAP Postfach von <USER>@example.com des Mailservers <OLD>.example.com nach <USER>@example.com des Mailservers <NEW>.example.com. Die hier gesetzte Option --dry sorgt dafür, dass eine Synchronisation nur simuliert wird. Entfernen wir die Option --dry, wird eine Live Synchronisation durchgeführt. Mit der Option --exclude kann man Folder von der Synchronisation ausschließen.

imapsync --dry         \
  --host1 <OLD>.example.com   \
  --user1 <USER>@example.com \
  --password1  \
  --host2 <NEW>.example.com   \
  --user2 <USER>@example.com \
  --password2  \
  --exclude 'Drafs|Spam-Try'

Dokumentation