Dovecot liefert nicht alle Nachrichten über IMAP

919
Hans Meiser

Ich habe ein Debian / Dovecot / Postfix-Standard-Setup. Zusätzlich starte ich nicht muchmail Indexer, um schnell nach Nachrichten zu suchen. Als Mail-Client verwende ich emClient unter Windows und habe Rainloop Webmail zum Laufen gebracht.

Ich habe nicht viel Mail verwendet, um nach einer bestimmten Nachricht zu suchen, und ich habe sie vor ca. 5 Jahren gefunden. Wenn ich bei emClient nachschaue, datierten die Nachrichten nur bis vor 3 1/2 Jahren. Ich hatte den Verdacht, dass emClient nicht alle Nachrichten heruntergeladen hat, aber dann habe ich bei Rainloop festgestellt, dass die älteste über IMAP sichtbare Nachricht 3 1/2 Jahre alt ist.

Bei der Suche nach dem Problem wird vorgeschlagen, den Mail-Client erneut zu synchronisieren, indem die Dovecot-Uidlist in meinem Maildir ( https://www.dovecot.org/list/dovecot/2013-October/092803.html ) gelöscht wird . emClient hat alle Nachrichten neu synchronisiert, ABER nichts hat sich geändert, die älteste Nachricht ist 3 1/2 Jahre alt.

Jetzt bin ich ratlos ... Gibt es noch etwas, was ich tun kann, um über IMAP auf ALLE meine Nachrichten zuzugreifen. Auf meinem Server wird Dovecot 2.2.13 ausgeführt.

Ausgabe "of dovecot -n"

# 2.2.13: /etc/dovecot/dovecot.conf # OS: Linux 3.16.0-4-amd64 x86_64 Debian 8.9 login_trusted_networks = 192.168.1.0/24 mail_location = maildir:~/Maildir managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave namespace inbox { inbox = yes location = mailbox Drafts { special_use = \Drafts } mailbox Junk { special_use = \Junk } mailbox Sent { special_use = \Sent } mailbox "Sent Messages" { special_use = \Sent } mailbox Trash { special_use = \Trash } prefix = separator = / } passdb { driver = pam } plugin { sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } protocols = " imap sieve" quota_full_tempfail = yes service auth { unix_listener auth-userdb { mode = 0600 user = username } } service managesieve-login { inet_listener sieve { port = 4190 } } ssl = required ssl_cert = </etc/letsencrypt/live/a.b.com/fullchain.pem ssl_cipher_list = AES128+EECDH:AES128+EDH ssl_dh_parameters_length = 2048 ssl_key = </etc/letsencrypt/live/a.b.com/privkey.pem ssl_protocols = !SSLv2 !SSLv3 userdb { driver = passwd } protocol lda { info_log_path = log_path = mail_plugins = " sieve" } 
1
Bitte geben Sie Informationen zu Ihrer Konfiguration (`doveconf -n`) an und überprüfen Sie Ihr Mail-Protokoll auf relevante Informationen. Schauen Sie sich auch die Unterschiede in Bezug auf die Dateibesitzer / Berechtigungen an. Jens Erat vor 6 Jahren 0
Gibt es einen Leitfaden für die Berechtigungen? Ich kann es hier nicht finden: https://wiki.dovecot.org/MailboxFormat/Maildir. Dies gilt nicht, da es sich nicht um ein gemeinsam genutztes Postfach handelt: https://wiki.dovecot.org/SharedMailboxes/Permissions Hans Meiser vor 6 Jahren 0
Es gibt also nichts, was in mail.err oder mail.log verwandt zu sein scheint. Die Berechtigungen der jeweiligen Nachricht, die nicht angezeigt wird, sind die gleichen wie für andere, die NICHT angezeigt werden: -rw ------- 1 myuser myuser 10395837 6. Oktober 2013 Hans Meiser vor 6 Jahren 0
Es gibt keine allgemeine Richtlinie, Dovecot muss auf die E-Mail zugreifen können (der Zugriffsmodus sollte jedoch auch nicht zu lässig sein). Die tatsächlich erforderlichen Berechtigungen hängen von der Konfiguration ab, aber alle Unterschiede zwischen angezeigten und anderen Meldungen, die nicht angezeigt werden, weisen auf ein wahrscheinliches Problem hin. Wenn sie gleich sind, geht es dir wahrscheinlich gut. Jens Erat vor 6 Jahren 0

1 Antwort auf die Frage

0
Jens Erat

Unterbrochene Indizes und andere Postfachprobleme

Das klingt nach einem Problem mit einem defekten Postfachindex, was Dovecot normalerweise sehr gut zum Reparieren eignet. Falls dies fehlschlägt, können Sie Dovecot dazu zwingen, Indizes und andere Probleme mit zu reparieren

doveadm force-resync -u <username> <mailbox> 

Wenn der Benutzer johndoeund die E-Mails nicht in seinem Posteingang angezeigt werden, lautet der Befehl

doveadm force-resync -u johndoe INBOX 

Das Ausführen doveadm -Dv force-resync ...(Debugging und ausführliche Ausgabe) bietet möglicherweise mehr Einblick in alle Probleme.

Probleme mit dem Client

In seltenen Fällen können Mail-Clients unter inkonsistenten lokalen Daten leiden, insbesondere wenn Mails auf der Serverseite aufgrund von Postfachproblemen neu nummeriert wurden. Einige Mail-Clients kennen "Reparieren" -Funktionen, bei anderen müssen Sie möglicherweise das Postfach entfernen und erneut erstellen und somit eine vollständige Synchronisierung auslösen.