cyrus-imapd und Quota
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.