Dovecot 2.3 zu Dovecot 2.4: Problem mit bestehenden hidden Maildirs und Namespace-Konfiguration in Dovecot 2.4
Andreas Günther
dovecot.user at linuxmaker.cloud
Mi Dez 3 10:31:39 CET 2025
Hallo zusammen,
wir haben ein Problem mit Dovecot 2.4 auf einem Produktionsserver, bei dem bestehende
Maildir-Ordner aus Dovecot 2.3 nicht korrekt im IMAP-Client angezeigt werden.
*Situation:*
* Die Maildirs liegen unter /var/vmail/<domain>/<user>/ und enthalten bereits
versteckte Ordner (Linux-Punkte-Präfix), z. B.:
drwx------ 5 vmail vmail 4096 3. Nov 09:15 *.Archive*
drwx------ 2 vmail vmail 8208384 3. Dez 10:19 *cur*
-rw------- 1 vmail vmail 0 5. Sep 2018 dovecot-acl-list
-rw------- 1 vmail vmail 3012760 3. Dez 07:40 dovecot.index
-rw------- 1 vmail vmail 98341764 3. Dez 10:19 dovecot.index.cache
-rw------- 1 vmail vmail 26980 3. Dez 10:19 dovecot.index.log
-rw------- 1 vmail vmail 32912 2. Dez 19:27 dovecot.index.log.2
-rw------- 1 vmail vmail 1248183 30. Nov 19:33 dovecot.index.thread
-rw------- 1 vmail vmail 127 29. Mai 2021 dovecot-keywords
-rw------- 1 vmail vmail 80024 3. Dez 02:43 dovecot.list.index
-rw------- 1 vmail vmail 7024 3. Dez 10:23 dovecot.list.index.log
-rw------- 1 vmail vmail 1416 1. Dez 19:33 dovecot.mailbox.log
-rw------- 1 vmail vmail 4128 6. Mai 2021 dovecot.mailbox.log.2
-rw------- 1 vmail vmail 0 25. Okt 00:18 .dovecot-sync.lock
-rw------- 1 vmail vmail 5093067 3. Dez 10:19 dovecot-uidlist
-rw------- 1 vmail vmail 8 31. Okt 18:22 dovecot-uidvalidity
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffacd
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffbee
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffbef
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffbf3
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc26
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc27
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2a
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2b
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2c
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2d
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2e
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc2f
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc31
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc32
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc33
-r--r--r-- 1 vmail vmail 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc65
-r--r--r-- 1 vmail 1002 0 5. Sep 2018 dovecot-uidvalidity.5b8ffc67
drwx------ 5 vmail vmail 4096 3. Nov 09:15 *.Drafts*
drwx------ 5 vmail vmail 4096 3. Nov 09:15 *.INBOX.2bplayed*
drwx------ 5 vmail vmail 4096 3. Nov 09:15 *.INBOX.7pass*
drwx------ 5 vmail vmail 4096 3. Nov 09:15 *.INBOX.7until7*
drwx------ 5 vmail vmail 4096 3. Dez 05:08 *.INBOX.abbyy*
drwx------ 5 vmail vmail 4096 24. Okt 23:51 *.INBOX.abbyy1*
drwx------ 5 vmail vmail 4096 24. Okt 23:57 *.INBOX.abelsoft*
* Diese Struktur existiert seit Jahren und darf nicht verändert werden.
*Problem:*
* Wir möchten Namespaces konfigurieren, um Clients Special-Use-Mailboxen (\Sent,
\Trash, \Junk, \Drafts) zuzuweisen.
* Mit einer Namespace-Konfiguration wie:
namespace inbox {
inbox = yes
prefix = ""
separator = .
type = private
mailbox Drafts { auto = subscribe special_use = "\Drafts" }
mailbox Junk { auto = subscribe special_use = "\Junk" }
mailbox Sent { auto = subscribe special_use = "\Sent" }
mailbox Trash { auto = subscribe special_use = "\Trash" }
mailbox Archive{ auto = subscribe }
}
* Dovecot erzeugt *neue leere Ordner* (Drafts, Junk, Trash, Sent, Archive)
* Die vorhandenen Ordner .Trash, .Sent, .Junk, .Drafts, .Archive, .INBOX.* werden *nicht
angezeigt*
*Analyse:*
* Dovecot 2.4 kann bestehende „hidden“ Maildirs (.-Prefix) nicht automatisch auf
Standard-Mailboxen mit special_use mappen.
* Option auto = subscribe führt dazu, dass Dovecot neue Ordner erstellt, wenn der
Name auf dem Dateisystem nicht exakt mit dem Namespace übereinstimmt.
* INBOX-Unterordner wie .INBOX.Fail2ban und .INBOX.vzdump werden durch Prefix/
Namespace-Konfiguration nicht korrekt erkannt.
*Schlussfolgerung:*
* Auf Produktionsservern, auf denen eine bestehende hidden Maildir-Struktur existiert,
*dürfen keine Standard-Mailboxen mit auto = subscribe und special_use konfiguriert
werden*, da dies zu „neuen“ leeren Ordnern führt und die Clients die alten Ordner nicht
sehen.
* Die einzige sichere Lösung ist, den Namespace *nur als Root (prefix = "") zu
definieren*, *keine Standard-Mailboxes anzulegen* und Dovecot alle bestehenden
Ordner erkennen zu lassen.
Gibt es eine Möglichkeit in Dovecot 2.4, *bestehende hidden Maildirs automatisch korrekt
als Special-Use-Mailboxes zu mappen*, ohne neue Ordner zu erzeugen?
Alternativ: Best Practices für *Produktionsserver mit langjähriger hidden Maildir-
Struktur*, die von allen Clients korrekt dargestellt werden soll?
Vielen Dank für jede Hilfe!
Andreas
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <https://listen.jpberlin.de/pipermail/dovecot/attachments/20251203/97cf4c88/attachment-0001.htm>
Mehr Informationen über die Mailingliste Dovecot