
cyradm> sq user.fritz 1048576 quota:1048576
Irgendwann hatte ich mir einmal aufnotiert, wie innerhalb des cyrus-imapd Quotas gesetzt und ausgelesen werden; eine Information, die ggf. auch für andere „da draußen“ interessant sein könnte
Die administrative Ansteuerung des cyrus-imapd erfolgt über den cyradm, und das umfasst so ziemlich alles: das Anlegen neuer sowie das Löschen nicht mehr benötigter User, das Prüfen der Mailboxgrößen, das Setzen der Zugriffsrechte und so weiter — und natürlich das Setzen und Auslesen der Quota. Ist man erst einmal im cyradm eingeloggt, erfolgt das Setzen der Quota in kB; nachfolgend setzen wir eine Quota von 1GB für den User fritz.
cyradm> sq user.fritz 1048576 quota:1048576
User arno soll eine Quota von 3GB erhalten.
cyradm> sq user.arno 3145728 quota:3145728
Selbstredend ist es günstiger, vorher zu prüfen, wieviel die User fritz und arno schon in ihrer Mailbox haben — und sie gegebenenfalls zum Aufräumen zu ermutigen ;) Wenn die Quota gesetzt ist, können wir schauen, wie ausgelastet die einzelnen Mailboxen im Verhältnis zur gesetzten Quota sind.
cyradm> lq user.arno STORAGE 257701/3145728 (8.19209416707357%)
arno hat also ~251MB und somit 8.19% seiner Mailbox belegt.
Dazu korrespondierend gibt es noch zwei weitere Files.
$ less /var/imap/quota/a/user.arno 263895518 3145728 $ less /var/imap/quota/f/user.fritz 10966 1048576
Hinweis: der korrekte Pfad steht in Abhängigkeit davon, was in /etc/imapd.conf als configdirectory konfiguriert wurde; in meinem Fall ist das /var/imap. Der Output ist unnötig kompliziert für mein Empfinden; der obere Wert in der Ausgabe für fritz gibt den tatsächlich belegten Speicher der Mailbox an (in Byte!, also in diesem Falle ~10kB), der untere Wert gibt den verfügbaren Speicher der Mailbox an (in kB!, also 1GB). Angeblich werden die Quotas im cyrus über ein 32bit-Integer gesetzt; im Umkehrschluss bedeutet das, dass eine Quota > 4GB zum einem Integer-Überlauf und damit in Zusammenhang stehenden, recht unangenehmen Problemen führt; diese Angabe muss ich jedoch für ganz aktuelle Versionen der Software noch überprüfen.
Im Thunderbird kann man sich die Auslastung als Balken begucken: Rechtsklick auf den Posteingang ? Eigenschaften ? Quota. Und in der Horde sorgt eine kleine Anpassung dafür, dass die Angabe sichtbar wird (Version 3.2): in imp/config/servers.php.
'quota' => array ( 'driver' => 'cyrus', 'params' => array() )
Ausloggen, einloggen, und die Kapazitätenanzeige erscheint.
2 Comments
Kleine Korrektur:
„Bei versionen älter^H^H^H^H^Hjünger als 2006 zumindest trifft dies nicht mehr zu.“
Bei älteren Cyrus Versionen gab es, meiner Erfahrung nach, einen segmentation fault bei Angaben über 4 GB. Bei versionen älter als 2006 zumindest trifft dies nicht mehr zu.
Oder war es nur weil ich seitdem ein 64-bit System besitze (und mein cyrus 64-bit compiled war)?
Weiss nicht mehr so genau… könnte auch gelogen sein.
Gruss,
Andy