uw-imapd und Zugriffsrechte
Problem
Heute hatte ich wieder mal nen Einsatz bei nem Kunden. Die Festplatte des IMAP-Servers (laeuft auf uw-imapd) war voll. Also neue Platte reingezangelt, mail-verzeichnis umkopiert, und neu in /var/mail reingemountet.
Nur lustigerweise brauchte nach dem Ummounten der imapd ca. ne halbe Stunde, bis das Pruefen auf neue Mails beendet war (ca. 900 Mails waren zu dieser Zeit im Eingang, also Ordner INBOX gespeichert). Ich habe dies auch manuell ueberprueft, ein SELECT INBOX
dauerte tatsaechlich so lange.
Lösung
Nach einigem ratlosen Herumsuchen im Google fand ich schliesslich die Loesung zum Problem:
Das Spool-Verzeichnis muss die Rechte 1777 haben, damit der imapd schnell auf die Ordner zugreifen kann (warum auch immer).
Also Loesung hier:
chmod 1777 /var/spool
Doch dann gab es noch immer ein Problem: Wenn man die einzelnen Mails, die zum Loeschen vorgemerkt waren, mit EXPUNGE wirklich loeschen wollte, blieben die trotzdem am Server. Der Mail-client Outlook express tat einfach nichts (also zeigte auch keien Fehlermeldung an).
Vielen Dank an dieser Stelle an Microsoft für die Sehr informative Fehlermeldungs-Ausgabe ihrer Applikationen!
Erst durch mitsniffen mittels tcpdump konnte ich dann die Antwort vom IMAP-Server sehen: Cannot expunge
oder so aehnlich. Hier hatte ich einen dummen Fehler gemacht:
on readonly mailbox
Ich habe einfach auf der neuen Platte ein mail-verzeichnis erstellt (als root) und das dann mittels mount –bind in /var/mail reingemountet. Hier bekommt /var/mail aber dann die Rechte meines neu erstellten Verzeichnisses, woraufhin natuerlich nur root Schreibrechte auf die Mailbox hatte.
Ich habe chmod 777 versucht, brachte aber nix. Richtig ist:
chown root:mail /var/mail
chmod 2775 /var/mail
Jetzt passt endlich wieder alles. Also: Vorsicht mit den Ordnerberechtigungen in Systemordnern!