NAME pac-du-quota - Plattenbelegung und Gruppenquota eines Hostsharing-Pakets AUFRUF pac-du-quota [-v|--visual | -j|--json | -t|--table] [--no-user] pac-du-quota --table-header pac-du-quota -h|--help BESCHREIBUNG Ermittelt fuer das Paket auf NVMe SSD (Home) und HDD Storage (/home/storage/) den Platz je Benutzer (du) und die Gruppenquota des Pakets (quota) und gibt beides in einem von drei Formaten aus. Muss als Paketbenutzer (z.B. xyz00) laufen, nicht als Benutzer xyz00-. Benutzerverzeichnisse werden per sudo als der jeweilige Benutzer vermessen. OPTIONEN -v, --visual Tabellen fuer das Terminal (Standard ohne Option) -j, --json JSON auf stdout -t, --table CSV-Zeilen zum Anhaengen an eine Datei, OHNE Kopfzeile --table-header nur die CSV-Kopfzeile ausgeben (ohne zu messen) --no-user nur Paketwerte, keine Werte je Benutzer; bei -t nur die Zeile typ "paket" -h, --help Kurzhilfe ausgeben WERTE Alle Formate liefern dieselben Werte unter denselben Namen, Groessen in MB, Prozente in % (siehe BERECHNUNG). Je Speicher (ssd, hdd): Benutzer: mb, anteil_summe_pct, anteil_quota_pct Paket: gebucht, fehler, summe_mb, summe_anteil_quota_pct, belegt_mb, quota_mb, limit_mb, belegt_pct, limit_pct, ueber_quota, grace, inodes, inodes_quota, inodes_limit, inodes_pct, inodes_limit_pct, inodes_ueber_quota, inodes_grace summe_* kommt aus du, belegt_* aus quota. Beide koennen abweichen: die Gruppenquota zaehlt auch Dateien des Pakets ausserhalb der vermessenen Verzeichnisse. Kein Wert: visual "-" (Grace "keine"), json null, CSV leeres Feld. Ja/nein: visual ja/nein, json true/false, CSV 1/0. BERECHNUNG du -s und quota liefern Bloecke in KiB (1 KiB = 1024 Byte). MB wird wie in der Hostsharing-Quota gerechnet: MB = KiB / 1024 (1 MB = 1024 KiB = 1048576 Byte) gerundet auf drei Nachkommastellen, z.B. 1799500 KiB / 1024 = 1757.324 MB (xyz00-name1) 6291456 KiB / 1024 = 6144.000 MB (gebuchte Quota 6 GB) Prozente werden aus den ungerundeten KiB-Werten berechnet und auf zwei Nachkommastellen gerundet: anteil_summe_pct = Benutzer / summe * 100 anteil_quota_pct = Benutzer / Paketquota * 100 belegt_pct = belegt / Paketquota * 100 limit_pct = belegt / hartes Limit * 100 inodes_pct = inodes / inodes_quota * 100 Auch summe_mb wird aus den KiB-Werten summiert und erst dann umgerechnet; die gerundeten MB der Benutzer koennen daher in der letzten Stelle von summe_mb abweichen. Inodes sind eine Anzahl (Dateien und Verzeichnisse), keine Groesse. CSV (-t) Trennzeichen ";", Dezimalpunkt, Datum mit Uhrzeit (ISO 8601). Eine Zeile je Benutzer (typ "benutzer") und eine Zeile je Paket (typ "paket"); Paketwerte stehen nur in der Zeile "paket". -t schreibt nie eine Kopfzeile, damit wiederholtes Anhaengen sauber bleibt. Die Kopfzeile kommt einmalig von --table-header. BEISPIELAUSGABE Terminal (Ausschnitt NVMe SSD): | Speicherplatz | Anteil an | Anteil an | Benutzername | (MB) | Summe | Quota | xyz00 | 111.844 | 2.71 % | 1.82 % | xyz00-name1 | 1757.324 | 42.65 % | 28.60 % | xyz00-name2 | 2250.922 | 54.63 % | 36.64 % | Summe | 4120.090 | 100.00 % | 67.06 % | Belegter Plattenplatz: 4121.094 MB Paketquota: 6144.000 MB ( 67.08 % belegt) Hartes Limit: 9216.000 MB ( 44.72 % belegt) CSV mit --table-header und -t (nur die ersten 7 Spalten): datum;paket;typ;benutzer;ssd_mb;ssd_anteil_summe_pct;ssd_anteil_quota_pct 2026-10-07T21:00:00+02:00;xyz00;benutzer;xyz00;111.844;2.71;1.82 2026-10-07T21:00:00+02:00;xyz00;benutzer;xyz00-name1;1757.324;42.65;28.60 2026-10-07T21:00:00+02:00;xyz00;benutzer;xyz00-name2;2250.922;54.63;36.64 2026-10-07T21:00:00+02:00;xyz00;paket;;4120.090;100.00;67.06 Mit -t --no-user nur die letzte Zeile. BEISPIELE Uebersicht im Terminal: pac-du-quota Nur Paketsummen: pac-du-quota --no-user JSON weiterverarbeiten: pac-du-quota -j | python3 -m json.tool CSV-Datei anlegen bzw. fortschreiben (Kopfzeile nur beim ersten Mal): [ -s ~/quota.csv ] || pac-du-quota --table-header > ~/quota.csv pac-du-quota -t >> ~/quota.csv Nur die Paketzeile mitschreiben: pac-du-quota -t --no-user >> ~/quota.csv AUSGABE UND EXIT-STATUS stdout enthaelt nur die gewaehlte Ausgabe, Warnungen und Fehler gehen nach stderr. 0 = ok, 1 = falscher Benutzer, 2 = unbekannte Option.