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.