Fatal error: failed to mmap cache file
Es ist zum Auswachsen: auf einem OpenExchange-Setup, das sich auf cyrus-imapd
und postfix
stützt und das lange, sehr lange einfach vor sich hin funktioniert hat, erscheinen plötzlich nachfolgende Meldungen im Log:
Nov 10 11:44:09 ox imap[26765]: login: localhost [127.0.0.1] spillerm plaintext User logged in
Nov 10 11:44:09 ox imap[26740]: accepted connection
Nov 10 11:44:09 ox imap[26740]: login: localhost [127.0.0.1] spillerm plaintext User logged in
Nov 10 11:44:09 ox imap[26740]: IOERROR: mapping cache file for user.spillerm: Cannot allocate memory
Nov 10 11:44:09 ox imap[26750]: accepted connection
Nov 10 11:44:09 ox master[26850]: about to exec /usr/lib/cyrus-imapd/imapd
Nov 10 11:44:09 ox imap[26740]: Fatal error: failed to mmap cache file
Nov 10 11:44:09 ox master[32168]: process 26740 exited, status 75
Nov 10 11:44:09 ox master[32168]: service imap pid 26740 in BUSY state: terminated abnormally
Nov 10 11:44:09 ox imap[26850]: executed
Also in erster Instanz herausfinden, wo cyrus
seinen Kram ablegt (falls man das nicht ohnehin weiß):
$ grep partition-default /etc/imapd.conf
partition-default: /var/spool/imap
Dann schauen wir uns mal an, wie gross das Cache-File des Users tatsächlich ist:
$ cd /var/spool/imap/s/user/spillerm
$ du -h cyrus.cache
2.1G cyrus.cache
Okay, das ist zu viel – selbst in Mailboxen mit hunderten Mails erreicht das File nicht eine solche Größe (wenn alles so läuft wie es soll)… Wie also Abhilfe schaffen?
-
cyrus
stoppen$ /etc/init.d/cyrus-imapd stop
-
cyrus.cache
dieses Users löschen; am Beispiel des Users spillerm könnte das beispielsweise so aussehen:$ rm /var/spool/imap/s/user/spillerm/cyrus.cache
- Mailbox des Users rekonstruieren
$ reconstruct -rf user.spillerm
Ist in /etc/imapd.conf
allerdings unixhierarchysep: yes
gesetzt, muss der Aufruf etwas modifiziert ausgeführt werden:
$ reconstruct -rf user/spillerm
Dadurch wird, unter anderem, cyrus.cache
neu erzeugt. Der Dienst kann nun wieder gestartet werden.
$ /etc/init.d/cyrus-imapd start
Hat den Fehler nachhaltig behoben :)
Hintergrundbild: 2448x 2448px, Bild genauer anschauen – © Marianne Spiller – Alle Rechte vorbehalten