Chaos nach Wechsel von courier zu dovecot

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
faulix
Beiträge: 3
Registriert: 04.12.2015 06:50:20

Chaos nach Wechsel von courier zu dovecot

Beitrag von faulix » 04.12.2015 07:03:23

Hallo,

vor einiger Zeit habe ich von courier zu dovecot gewechselt und die Mails konvertiert, zumindest dachte ich das. Nun habe ich jedoch herausgefunden, dann viele meiner gesendeten E-Mails fehlen und ich auch ein riesiges Chaos in meinem vmail Ordner habe. Hier mal ein exemplarischer Auszug:

Code: Alles auswählen

root@anonymous:/var/vmail/anonymous/info/Maildir# ls -al
insgesamt 6252
drwx------ 26 vmail vmail    4096 Dez  4 06:52 .
drwx------  3 vmail vmail    4096 Dez  4 06:51 ..
drwx------  6 vmail vmail    4096 Jun 19 11:49 .Apple Mail To Do
drwx------  6 vmail vmail    4096 Jun 19 11:50 .Archive
drwx------  2 vmail vmail   16384 Jun 17 22:15 courierimapkeywords
-rw-r--r--  1 vmail vmail      45 Jun 19 08:34 courierimapsubscribed
-rw-r--r--  1 vmail vmail      15 Jun 19 08:34 courierimapuiddb
-rw-r--r--  1 vmail vmail      16 Jun 19 08:34 courierpop3dsizelist
drwx------  2 vmail vmail 1523712 Dez  4 06:52 cur
drwx------  6 vmail vmail    4096 Jun 19 11:50 .Deleted Messages
-rw-------  1 vmail vmail  222880 Dez  4 06:30 dovecot.index
-rw-------  1 vmail vmail 3728384 Dez  4 06:52 dovecot.index.cache
-rw-------  1 vmail vmail   14312 Dez  4 06:52 dovecot.index.log
-rw-------  1 vmail vmail   32772 Dez  3 17:00 dovecot.index.log.2
-rw-------  1 vmail vmail      34 Nov 23 16:33 dovecot-keywords
-rw-------  1 vmail vmail     144 Jul 24 11:46 dovecot.mailbox.log
-rw-------  1 vmail vmail  689369 Dez  4 06:51 dovecot-uidlist
-rw-------  1 vmail vmail       8 Aug  8 10:20 dovecot-uidvalidity
-r--r--r--  1 vmail vmail       0 Jun 18 22:51 dovecot-uidvalidity.55832f6d
drwx------  6 vmail vmail    4096 Aug 12 08:06 .Drafts
drwx------  5 vmail vmail    4096 Jul 22 21:37 .Entw&APw-rfe
drwx------  5 vmail vmail    4096 Jul 22 21:37 .Gesendet
drwx------  5 vmail vmail    4096 Dez  4 06:26 .INBOX.Deleted Messages
drwx------  6 vmail vmail    4096 Dez  4 06:26 .INBOX.Drafts
drwx------  5 vmail vmail    4096 Dez  1 19:52 .INBOX.Junk
drwx------  5 vmail vmail    4096 Sep  9 13:04 .INBOX.Sent
drwx------  6 vmail vmail    4096 Dez  4 06:26 .INBOX.Sent Messages
drwx------  5 vmail vmail    4096 Sep  9 15:52 .INBOX.Trash
drwx------  6 vmail vmail    4096 Jul 24 13:13 .Junk
drwx------  2 vmail vmail   12288 Dez  4 06:51 new
drwx------  5 vmail vmail    4096 Jul 22 21:37 .Papierkorb
-rw-------  1 vmail vmail      47 Jun 18 23:21 .quotausage
drwx------  6 vmail vmail    4096 Nov 28 06:40 .Sent
drwx------  6 vmail vmail    4096 Jul 13 18:27 .Sent Messages
-rw-r--r--  1 vmail vmail      78 Jun 19 08:49 .sieve
-rw-------  1 vmail vmail     113 Jul 24 11:46 subscriptions
drwx------  2 vmail vmail    4096 Dez  4 06:51 tmp
drwx------  6 vmail vmail    4096 Dez  4 04:07 .Trash
drwx------  5 vmail vmail    4096 Aug  8 10:20 .Unwanted
drwx------  6 vmail vmail    4096 Jun 19 11:49 .Wordpress
drwx------  6 vmail vmail    4096 Jun 19 11:50 .XING
Hier noch meine dovecot.conf:

Code: Alles auswählen

listen = *,[::]
protocols = imap pop3
auth_mechanisms = plain login
disable_plaintext_auth = no
auth_verbose = yes
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_privileged_group = vmail
ssl_cert = </etc/postfix/smtpd.cert
ssl_key = </etc/postfix/smtpd.key
ssl_protocols = !SSLv2 !SSLv3
passdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}
userdb {
  args = /etc/dovecot/dovecot-sql.conf
  driver = sql
}
plugin {
  quota = dict:user::file:/var/vmail/%d/%n/.quotausage
  sieve=/var/vmail/%d/%n/.sieve
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0660
    user = postfix
  }
  unix_listener auth-userdb {
    group = vmail
    mode = 0600
    user = vmail
  }
  user = root
}
service imap-login {
  client_limit = 1000
  process_limit = 500
}
protocol imap {
  mail_plugins = quota imap_quota
}
protocol pop3 {
  pop3_uidl_format = %08Xu%08Xv
  mail_plugins = quota
}
protocol lda {
  mail_plugins = sieve quota
}

namespace inbox {
  inbox = yes
  location =
  separator = .
  prefix =
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox Trash {
    auto = subscribe
    special_use = \Trash
  }
  mailbox Junk {
    auto = subscribe
    special_use = \Junk
  }
}
Auch die Verwendung von meiner Mail klappt nicht zu 100%Ig auf Android & Apple, daher nun ganz konkret die folgenden Fragestellungen:
  • Wie sollte dovecot konfiguriert werden, dass die Zusammenarbeit von Apple Mail sowie Android problemlos funktioniert?
  • Wie konvertiere ich den Rest der "alten" Daten zu dovecot?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: Chaos nach Wechsel von courier zu dovecot

Beitrag von rendegast » 04.12.2015 11:20:11

drwx------ 6 vmail vmail 4096 Aug 12 08:06 .Drafts
drwx------ 5 vmail vmail 4096 Jul 22 21:37 .Entw&APw-rfe
drwx------ 6 vmail vmail 4096 Dez 4 06:26 .INBOX.Drafts
Da werkeln mindestens drei Programme (inkl. dovecot).
Vielleicht mal mit 'namespace' spielen, 10-mail.conf, 15-mailboxes.conf.

Weiterhin die locale-Einstellung des Servers,

Code: Alles auswählen

dpkg-reconfigure locales
ich verwende als verfügbare

Code: Alles auswählen

# locale -a
...
de_DE.iso88591
de_DE.iso885915@euro
de_DE.utf8
...
en_US.iso88591
en_US.iso885915
en_US.utf8
als Haupt-locale enUS-utf8.

Zugriff erfolgt eigentlich nur über web-Mailer

Code: Alles auswählen

$squirrelmail_default_language = 'de_DE';
$default_charset       = 'iso-8859-15';
$lossy_encoding        = false;

$imap_server_type       = 'dovecot';

$default_folder_prefix          = '';
$trash_folder                   = 'Trash';
$sent_folder                    = 'Sent';
$draft_folder                   = 'Drafts';
(Das Adressbuch des squirrel läuft per iso-8859,
eine Konsolidierung vom früheren webmailer t-online war daher tricky.)
Soll nur zeigen, daß die Anwendungen mitbetrachtet werden sollten.

ZBsp. kann ich im sylpheed die besonderen Ordner Trash/Sent/... definieren.
Im dovecot (1.2.15 - 2.2.13jessie) bin ich in der Beziehung nie vom default abgewichen.
-----------------------------
Nicht ganz, beim Umbau maildir -> mdbox
habe ich
namespace inbox { separator = / .....
gesetzt (Versuche dsync / backup / konvertierung).
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

Dimejo
Beiträge: 503
Registriert: 21.07.2014 13:37:23

Re: Chaos nach Wechsel von courier zu dovecot

Beitrag von Dimejo » 04.12.2015 20:57:36

faulix hat geschrieben:Auch die Verwendung von meiner Mail klappt nicht zu 100%Ig auf Android & Apple, daher nun ganz konkret die folgenden Fragestellungen:

Wie sollte dovecot konfiguriert werden, dass die Zusammenarbeit von Apple Mail sowie Android problemlos funktioniert?
Manche MUAs ignorieren gerne die Vorgabe zur Verwendung von bestimmten Verzeichnissen (special_use). Da musst Du dann selbst Hand anlegen, und dem MUA sagen welche Verzeichnisse es für was verwenden soll.
faulix hat geschrieben:Wie konvertiere ich den Rest der "alten" Daten zu dovecot?
Die Ordnerstruktur sieht mir nach Maildir-Format aus. In diesem Fall kannst Du einfach alle E-Mails (die einzelnen Dateien) in die gewünschten Ordner schieben, und die leeren Ordner dann löschen. Backup natürlich nicht vergessen.


PS: So wie es aussieht ist Dein home-Verzeichnis auch Dein Maildir-Verzeichnis. Das kann zu Problemen führen.
Siehe: http://wiki.dovecot.org/VirtualUsers/Home

faulix
Beiträge: 3
Registriert: 04.12.2015 06:50:20

Re: Chaos nach Wechsel von courier zu dovecot

Beitrag von faulix » 07.12.2015 06:48:42

Hallo,

ich hab mich jetzt noch einmal hingesetzt und bin durch die Ordner gegangen sowie durch die Konfigurationen.

Mir ist aufgefallen, dass viele Ordner in den subscriptions doppelt sind, das kann so ja nicht stimmen:

Code: Alles auswählen

INBOX.Sent Messages
INBOX.Drafts
Sent
Drafts
Trash
Junk
INBOX.Deleted Messages
INBOX.Junk
INBOX.Sent
INBOX.Trash
Sehe ich es richtig, dass es dadurch für alles zwei Ordner gibt und je nach E-Mail-Client ein anderer genutzt werden kann? Welche Struktur ist zu empfehlen und wie sollte ich dafür dovecot konfigurieren?

Locales habe ich inzwischen auch entsprechend gesetzt, nun sollte das Umlaut-Problem behoben sein.

Also so wie ich das verstanden habe stehen nun hauptsächlich 2 Schritte an:
  • Anpassung der namespaces um eine ordentliche Ordnerstruktur zu bekommen (aber wie?)
  • Kopieren der Mails von der alten Ordnerstruktur in die neuen (bzw. der Ordner die nicht mehr benötigt werden)
Vielen Dank schon einmal für Eure Hilfe.

Grüße Stefan

Dimejo
Beiträge: 503
Registriert: 21.07.2014 13:37:23

Re: Chaos nach Wechsel von courier zu dovecot

Beitrag von Dimejo » 08.12.2015 18:33:39

faulix hat geschrieben:Mir ist aufgefallen, dass viele Ordner in den subscriptions doppelt sind, das kann so ja nicht stimmen:

Code: Alles auswählen

INBOX.Sent Messages
INBOX.Drafts
Sent
Drafts
Trash
Junk
INBOX.Deleted Messages
INBOX.Junk
INBOX.Sent
INBOX.Trash
Sehe ich es richtig, dass es dadurch für alles zwei Ordner gibt und je nach E-Mail-Client ein anderer genutzt werden kann? Welche Struktur ist zu empfehlen und wie sollte ich dafür dovecot konfigurieren?
Je nach Einstellung kannst Du entscheiden ob sich Verzeichnisse nur unterhalb vom Posteingang, oder auch auf gleicher Ebene dazu befinden dürfen. Die erste Variante ist typisch für Courier und sieht etwa so aus:

Code: Alles auswählen

|-- Posteingang
    |-- Gesendet
    |-- Spam
    |-- Papierkorb
Die zweite Variante ist die Standardeinstellung unter Dovecot und sieht etwa so aus:

Code: Alles auswählen

|-- Posteingang
|-- Gesendet
|-- Spam
|-- Papierkorb
Dovecot kann aber auch mit der ersten Variante umgehen. Dafür mußt Du in der Datei /etc/dovecot/conf.d/10-mail.conf den prefix anpassen.

Code: Alles auswählen

namespace inbox {
  [...]
  separator = /
  prefix = INBOX/
}
Wichtig ist dabei, dass der prefix zu Deinem separator passt. Wenn Du statt einem "/" einen "." als separator verwendet, dann muss auch der prefix darauf enden.

Die bestehenden Verzeichnisse musst Du dabei aber händisch zusammen führen, um die Struktur zu bereinigen.

faulix
Beiträge: 3
Registriert: 04.12.2015 06:50:20

Re: Chaos nach Wechsel von courier zu dovecot

Beitrag von faulix » 10.12.2015 14:48:11

Nach der Änderung der Struktur (Zusammenführung), wie erreiche ich, dass dovecot nun die E-Mails neu indexiert, da ich derzeit ja nur die alten E-Mails angehzeigt bekomme und nicht die neu hinzugefügten.

Edit:
Hab es nach langem Suchen selbst herausgefunden: Einfach die dovecot* Dateien löschen und dovecot generiert sie erneut.

Antworten