cyrus-imapd und Quota

Diesen Beitrag schrieb ich 15 Jahre und 10 Monate zuvor; die nachfolgenden Ausführungen müssen heute weder genau so nach wie vor funktionieren, noch meiner heutigen Meinung entsprechen. Behalte das beim Lesen (und vor allem: beim Nachmachen!) bitte stets im Hinterkopf.

Geschätzte Lesezeit: 2 Minuten

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.

Eure Gedanken zu „cyrus-imapd und Quota“

Ich freue mich über jeden Kommentar, es sei denn, er ist blöd. Deshalb behalte ich mir auch vor, die richtig blöden kurzerhand wieder zu löschen. Die Kommentarfunktion ist über GitHub realisiert, weshalb ihr euch zunächst dort einloggen und „utterances“ bestätigen müsst. Die Kommentare selbst werden im Issue-Tracker und mit dem Label „✨💬✨ comment“ erfasst – jeder Blogartikel ist ein eigenes Issue. Über GitHub könnt ihr eure Kommentare somit jederzeit bearbeiten oder löschen.