Failed to get quota resource STORAGE/MESSAGE

Thomas Barth tbarth at txbweb.de
Di Mai 21 14:36:59 CEST 2024


Hallo,
ich spreche natürlich auch Deutsch. Ich habe nur vergessen, dass dies 
hier eine deutsche Liste ist, meine anderen abonnierten Listen sind alle 
in Englisch.

Danke, dass du dir die Mühe gemacht hast, die Debug-Ausgaben anzusehen. 
Ich konnte das Problem etwas reduzieren, aber es funktioniert immer noch 
nicht richtig. Es gab zunächst ein Rechteproblem mit der 
/etc/dovecot/dovecot-dict-sql.conf.ext. Ich war auf die Debug-Ausgabe 
fixiert und hatte nicht im journal nachgesehen. Denn dort wurde ein 
Zugriffsfehler angezeigt.

Mit der Rechte-Korrektur funktioniert
1. Bei Einlieferung einer Mail wird der Wert in den Feldern bytes und 
messages aktualisiert.
2. doveadm quota get liefert den Wert aus der DB.

Was nicht funktioniert und was mich verzweifeln lässt:
doveadm quota recalc

Wenn die Rechte für die DB-Tabelle mit den Quota-Feldern mit "GRANTS 
SELECT, UPDATE ..." gesetzt sind, dann werden die Felder nicht 
aktualisiert trotz Neuberechnung.

(Debug-Ausgabe doveadm quota recalc)
quota-dict: Quota recalculated: count=30657 bytes=608708975

Jetzt kommts! Wenn die Rechte mit "GRANTS ALL PRIVILEGES ..." gesetzt 
sind (Vermutung, dass hier vielleicht etwas fehlt), dann passiert nicht 
nur nichts, sondern es wird der virtuelle User aus der DB gelöscht! Das 
Verzeichnis mit den Maildaten bleibt erhalten. doveadm quota recalc 
verwechselt UPDATE und DELETE! Ich wollte nicht extra eine Tabelle für 
Quota anlegen und habe die drei Felder quota, bytes, messages in der 
User-Tabelle untergebracht.

Wie kann doveadm quota recalc UPDATE und DELETE verwechseln? Es bedeutet 
aber schon einmal, dass auf die richtige Tabelle zugegriffen wird. Aber 
Datensatz löschen?

Ich werde es jetzt noch einmal mit einer Extra-Tabelle quota versuchen, 
wie es in der /etc/dovecot/dovecot-dict-sql.conf.ext als Beispiel 
vorgeschlagen wird, ansonsten kapituliere ich.

Zu "Permission denied" for /proc/self/io . AppArmor hatte ich bereits zu 
Beginn der Einrichtung deinstalliert, SElinux ist nicht installiert 
(Debian 12.5).

Gruß
Thomas

Am 2024-05-20 20:56, schrieb Christian Boltz:
> Hello,
> 
> (this is a german list, so if you speak german, feel free to switch
> over.)
> 
> Am Sonntag, 19. Mai 2024, 13:54:51 MESZ schrieb Thomas Barth via
> Dovecot:
>>   quota-dict: user=user at domain.de, uri=proxy::quota, noenforcing=0
>>   dict(proxy): dict created (uri=proxy::quota, base_dir=/run/dovecot)
>>   open(/proc/self/io) failed: Permission denied
> 
> I don't know if it's the root cause of your problem, but maybe you
> should check what causes this "Permission denied" for /proc/self/io.
> If you have AppArmor or SELinux active, I'd recommend to check the
> audit.log.
> 
> If the issue is caused by AppArmor, please post the DENIED log entries
> so that I can fix the upstream AppArmor profiles (and of course tell 
> you
> which rules you'll need to add).
> 
> 
> Regards,
> 
> Christian Boltz


Mehr Informationen über die Mailingliste Dovecot