Dovecot ist ein vielseitiger Mail-Delivery Agent und IMAP / POP Server, der gut mit Postfix (MTA) zusammenarbeitet.
Es gibt mehrere Formate, die Dovecot verwenden kann, um die Postfächer zu speichern. Für virtuelle Postfächer oder große Postfächer sollte das Dovecot-eigene mdbox-Format verwendet werden. Um Maildir-Postfächer umzuwandeln kann man sich an folgende Anleitung halten1).
mdbox
sieht Im Dateisystem z.B. so aus:
./ ../ dovecot.index dovecot.index.cache dovecot.index.log dovecot.mailbox.log dovecot-uidlist dovecot-uidvalidity dovecot-uidvalidity.4fd99aa1 mailboxes/ storage/ subscriptions
Maildir sieht z.B. so aus:
./ ../ cur/ .INBOX.Archives/ .Gel&APY-schte Elemente/ .Gesendete Elemente/ .Junk-E-Mail/ new/ .Sent/ tmp/ .Trash/
In der Dovecot-Konfiguration muss der Mailbox-Typ auf automatisch gestellt werden, damit Dovecot sowohl mit Maildir und mdbox Postfächern umgehen kann. Dies passiert in /etc/dovecot/conf.d/10-mail.conf
. Später kann man nur noch mdbox verwenden:
#mail_location = maildir:/srv/vmail/%d/%u/ mail_location = auto:/srv/vmail/%d/%u/ #mail_location = mdbox:/srv/vmail/%d/%u/
Falls der Mailserver in der Zeit der Umwandlung nicht benötigt wird, sollte man den Postfix beenden, damit während der Umwandlung keine neuen Mails eingehen.
sudo service postfix stop
Nun benennt man das alte Maildir-Verzeichnis um
sudo mv /srv/vmail/domain/[postfach] /srv/vmail/[domain]/[postfach]_maildir
Anschließend erstellt man ein neues Verzeichnis für mdbox und passt die Besitzrechte an
sudo mkdir /srv/vmail/[domain]/[postfach] sudo chown vmail:vmail /srv/vmail/[domain]/[postfach]
Nun wird dsync
angewendet:
sudo dsync -u [postfach] -fvR mirror maildir:/srv/vmail/[domain]/[postfach]_maildir
Anmerkungen zu diesem Befehl:
[postfach]
muss der Anmeldename sein, der bei der IMAP Anmeldung verwendet wird, es wird dann über Dovecot das korrekte Postfach gesucht und verwendet. Deshalb darf der Dovecot-Dienst nicht beendet werden.-f
bewirkt eine volle Synchronisierung, -v
(verbose) gibt Informationen zum Abgleich-Prozess aus, -R
sagt, dass vom Ziel zum Ursprung synchronisiert wird (sollte keine Auswirkung haben, wenn man die Option weglässt)Die Umwandlung kann auch andersherum gemacht werden:
sudo mkdir user@domain_mdbox sudo chown vmail:vmail user@domain_mdbox dsync -u user@domain -fv mirror mdbox:/srv/vmail/domain/user@domain_mdbox sudo mv user@domain user@domain_maildir sudo mv user@domain_mdbox user@domain
Achtung: Wenn die Verzeichnisstruktur von mdbox in einem Verzeichnis existiert, erkennt Dovecot mit der Einstellung auto:
nur noch das mdbox-Format und nicht mehr das Maildir-Format. Wurde die Synchronisierung fälschlicherweise so aufgerufen, dass Dovecot in dem Mailverzeichnis die mdbox-Dateien erstellt hat, muss man sie manuell löschen oder in ein neues Verzeichnis verschieben.
Leider funktioniert in Dovecot 2.0.19 die automatische Erkennung des Postfach-Formats mit mail_location = auto:/…
nicht wie erwartet, sodass Dovecot Mails im mdbox-Format abspeichert und liest, obwohl das Postfach im Maildir-Format vorliegt. Für den Nutzer sind dann alte E-Mails nicht mehr sichtbar. Hier eine Anleitung, wie man „gemischte“ Mailboxen entzerrt und in das mdbox
–Format umwandelt:
Wenn Verzeichnis Teile eines Maildir-Verzeichnisses enthält(*), dann
[mailbox]_maildir„ verschieben
- Verzeichnisse „mailboxes“ und „storage“ in dem neuen
mdbox''-Postfach anlegenBeispiel-Befehle:
#Sichern sudo tar -czf /srv/vmail/[domain]/media/backup/[datum]_sic_[domain].tgz #Verzeichnisse erstellen und Rechte anpassen sudo mkdir [mailbox]_maildir sudo chown vmail:vmail [mailbox]_maildir #Dateien verschieben cd [mailbox] sudo mv sudo mv cur new tmp .Sent .Trash ../[email]_maildir/
#prüfen, ob Verzeichnisse für mdbox vorhanden sind ls -la sudo mkdir storage sudo mkdir mailboxes sudo chown vmail:vmail *
#Synchronisation zur Sicherheit 2x ausführen sudo dsync -R -f -v -u [mailbox] mirror maildir:/srv/vmail/[domain]/[mailbox]_maildir/
Bei Verwendung dieses Wikis erklären Sie sich mit dem Haftungsausschluss, Nutzungsbedingungen und der Datenschutzerklärung dieses Wikis einverstanden. Impressum.