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?
-
cyrusstoppen$ /etc/init.d/cyrus-imapd stop -
cyrus.cachedieses 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 :)
Ein Kommentar
Von: J-P Human
2013-05-07 12:46:54 +0200
Thanks this saved me a lot of time and helped me solve a similar issue.
Hinterlasse einen Kommentar
Ich freue mich über jeden Kommentar, es sei denn, er ist blöd.
Deshalb sind die Kommentare auf dieser Seite auch generell moderiert.