Bug 18113 - Nur eine Benutzerquotaeinstellung pro Partition möglich
Nur eine Benutzerquotaeinstellung pro Partition möglich
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Quota
UCS 2.3
Other Linux
: P5 enhancement (vote)
: UCS 2.4
Assigned To: Janek Walkenhorst
Felix Botner
:
Depends on:
Blocks: 18898 19053 19298
  Show dependency treegraph
 
Reported: 2010-04-13 10:11 CEST by Tobias Scherer
Modified: 2010-08-31 13:21 CEST (History)
2 users (show)

See Also:
What kind of report is it?: ---
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Tobias Scherer univentionstaff 2010-04-13 10:11:21 CEST
Für die Einrichtung von Benutzerquota auf Dateisysteme und Verziechnisfreigaben besteht nur die Möglichkeit eine Quotaeinstellung pro Partition anzuwenden. Es ist nicht möglich verschiedene Quotaeinstellungen für bspw. verschiedene Benutzer oder Gruppen per Richtlinie zu setzen.
Comment 1 Stefan Gohmann univentionstaff 2010-05-07 10:14:52 CEST
Wir sollten hier andere Möglichkeiten prüfen.
Comment 2 Janek Walkenhorst univentionstaff 2010-05-12 17:14:42 CEST
Grundsätzlich lassen sich Quota-Einstellungen nur für ganze Partitionen vornehmen.

Darum ist die Einstellung der Quota per Richtlinie an UDM-Freigaben nicht sinnvoll, da man mehrere Freigaben auf einer Partition haben kann.

ext3 und xfs unterstützen Quota per Benutzer und per Gruppe.
Darum wäre es vermutlich das Sinnvollste, die UMC zu erweitern, dass Gruppen-Quota-Einstellungen definiert werden können.
Damit können dann die Beschränkungen viele Benutzer komfortabel über den UDM durch einfaches ändern der Gruppenmitgliedschaften angepasst werden.

Die Quota-Einstellungen an UDM-Freigaben sollten abgeschafft werden.
Comment 3 Stefan Gohmann univentionstaff 2010-05-14 07:54:42 CEST
Hinweis von Ingo, die Gruppenquota beziehen sich häufig darauf, wie viel Platz alle Gruppenmitglieder gemeinsam verwenden.

Für die Ablösung der UDM-Quota-Richtlinie müsste es dann noch eine Default-Einstellung für neue Benutzer geben können.
Comment 4 Janek Walkenhorst univentionstaff 2010-07-01 14:55:44 CEST
(In reply to comment #3)
> Hinweis von Ingo, die Gruppenquota beziehen sich häufig darauf, wie viel Platz
> alle Gruppenmitglieder gemeinsam verwenden.
Das ist korrekt - damit ist das unbrauchbar.
Comment 5 Janek Walkenhorst univentionstaff 2010-07-01 15:12:34 CEST
Vorschlag:
Bei der Anmeldung wird bereits über ein PAM-Modul anhand der Freigabe-Quota-Richtlinien für jeden Benutzer eine Quota-Einstellung gesetzt.
Diese Richtlinien würde man erweitern, sodass sie für spezifizierte Benutzer oder Gruppen Quotas definieren. Eine Quota für eine Gruppe bedeutet in diesem Fall, dass für alle Benutzer in der Gruppe diese Quota-Einstellung übernommen wird.
(@Schüler 100MB ==> Jeder "Schüler" hat 100MB zur Verfügung - beim Anmelden wird für jeden Benutzer dieser Gruppe eine Beschränkung von 100MB gesetzt)

Diese Lösung hat das Problem, dass Freigaben nicht unbedingt Dateisystemen entsprechen, und eine Quota-Einstellung nur für ein gesamtes Dateisystem gesetzt werden kann.
Da der Standard-Anwendungsfall jedoch ein Dateiserver mit einer Freigabe ist, ist dies kein Problem und kann durch Dokumentation abgedeckt werden.
Sollten doch 2 Freigaben auf einem Dateisystem liegen, so kann z.B. die Summe der Beschränkungen als effektive Einstellung annehmen.

Vorteile:
Durch das PAM-Modul mit direktem LDAP-Zugriff gibt es kein Problem mit Gruppen-in-Gruppen.

Das PAM-Modul ist für die Freigaben-Richtlinien bereits vorhanden, muss also nur erweitert werden.

Benutzer können mit Gruppen, und Freigaben über Richtlinien zusammengefasst werden, um - sofern nötig - die Administration zu vereinfachen.



Das UMC-Quota-Modul kann koexistieren - im Zweifel überschreiben die Richtlinien-basierten Einstellungen die manuellen.
Comment 6 Janek Walkenhorst univentionstaff 2010-07-01 15:18:38 CEST
Da die meisten Dateisysteme (da Standardeinstellung) genug Inodes haben um das Dateisystem mit kleinen Dateien (1-16KiB) zu füllen ist die Beschränkung auf Inodes nicht Praxis-relevant - eher verwirrend.
Darum sollte dies entfernt werden - dadurch wird auch die UI im UDM verbessert.
Comment 7 Stefan Gohmann univentionstaff 2010-07-02 11:13:56 CEST
Der Vorschlag ist gut, aber leider relativ aufwendig in der Umsetzung. Die Alternative ist ein kleines Skript, welches für jedes Gruppenmitglied einer angegebene Gruppe die angegebene Quota setzt. Das könnte dann sehr einfach per UCR Cron definiert werden:

univention-quota-group
 --group "Domain Users"
 --hardlimit "10 MB"
 --softlimit "5 MB"
 --mountpoint "/mnt/share"
 --force #optional
 --nestedgroups #optional

--force veranlasst das Skript die Quota zu setzen, auch wenn für den Benutzer bereits eine Quota gesetzt wurde.

Das PAM-Quota-Skript sollte optional deaktiviert werden können.
Comment 8 Stefan Gohmann univentionstaff 2010-07-02 11:25:17 CEST
Es müsste nochmal geprüft werden, wer was überschreibt. Vermutlich überschreibt das Login-Skript die aktuell gesetzte Einstellung nicht, was auch in Ordnung ist, wenn das entsprechend dokumentiert ist.
Comment 9 Janek Walkenhorst univentionstaff 2010-07-07 15:03:43 CEST
univention-quota (5.0.2-1) unstable; urgency=low

  * add univention-group-quota (Bug #18113)

Beispiel:
univention-group-quota -ng Gruppe -m /share -s 123 -h 321 -v

(In reply to comment #8)
> Es müsste nochmal geprüft werden, wer was überschreibt. Vermutlich überschreibt
> das Login-Skript die aktuell gesetzte Einstellung nicht, was auch in Ordnung
> ist, wenn das entsprechend dokumentiert ist.
Es wird nicht überschrieben
Comment 10 Janek Walkenhorst univentionstaff 2010-07-20 17:16:00 CEST
(In reply to comment #9)
> (In reply to comment #8)
> > Es müsste nochmal geprüft werden, wer was überschreibt. Vermutlich überschreibt
> > das Login-Skript die aktuell gesetzte Einstellung nicht, was auch in Ordnung
> > ist, wenn das entsprechend dokumentiert ist.
> Es wird nicht überschrieben
Das ist im Handbuch dokumentiert.

Bug #19053 wurde für die Dokumentation von univention-group-quota angelegt.
Comment 11 Felix Botner univentionstaff 2010-08-16 12:17:58 CEST
OK, 

# quota mit UMC für Admin gesetzt
-> quota -v -w Administrator
Disk quotas for user Administrator (uid 2005):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/mapper/vg_ucs-rootfs    2036  204800  409600             217       0       0

# Gruppe "quota test" mit test1, test2 und Gruppen "Domain Admins" 
# als Mitglieder
-> getent  group "quota test"
quota test:*:5019:test1,test2,Administrator

# Quota für Gruppenmitglieder (ohne nested Groups)
-> univention-group-quota  -g "quota test" -s 10000 -h 20000 -m / -v
Using group quota test
Using filesystem /dev/mapper/vg_ucs-rootfs
Searching for users directly in quota test
Setting quota 10000/20000 (0/0) for test1 on /dev/mapper/vg_ucs-rootfs
Setting quota 10000/20000 (0/0) for test2 on /dev/mapper/vg_ucs-rootfs
Everything OK

# Quota für Gruppenmitglieder mit nested Groups, ohne force
-> univention-group-quota  -g "quota test" -s 10000 -h 20000 -m / -v -n
...
Skipping Administrator
...

# Quota für Gruppenmitglieder mit nested Groups und force
-> univention-group-quota  -g "quota test" -s 10000 -h 20000 -m / -v -n -f
...
Forcing Administrator
Setting quota 10000/20000 (0/0) for Administrator on /dev/mapper/vg_ucs-rootfs
...

# Quota ist gesetzt
-> quota -v -w Administrator
Disk quotas for user Administrator (uid 2005):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/mapper/vg_ucs-rootfs    2036   10000   20000             217       0       0

-> quota -v -w test1
Disk quotas for user test1 (uid 2012):
     Filesystem  blocks   quota   limit   grace   files   quota   limit   grace
/dev/mapper/vg_ucs-rootfs       0   10000   20000               0       0       0

# quota wird beim Login nicht überschrieben
-> ucr set quota/logfile=/tmp/q.log
-> su Administrator
-> more /tmp/q.log
22759 -------------------------------------------------------- start
22759 Sat Jul 10 09:49:37 CEST 2010
22759 set default quota for Administrator
22759 host ist qamaster.univention.qa
22759 quota for fs /dev/mapper/vg_ucs-rootfs already set
22759 all quotas are already set
22759 -------------------------------------------------------- exit

Changelog Eintrag fehlt.
Comment 12 Janek Walkenhorst univentionstaff 2010-08-17 09:11:37 CEST
(In reply to comment #11)
> Changelog Eintrag fehlt.

\item Das Programm \ucsName{univention-group-quota} zum Setzen der Benutzerquota
  für alle Benutzer in einer Gruppe wurde hinzugefügt (\ucsBug{18113}).
Comment 13 Felix Botner univentionstaff 2010-08-17 09:26:33 CEST
OK
Comment 14 Stefan Gohmann univentionstaff 2010-08-31 13:21:20 CEST
UCS 2.4 wurde veröffentlicht. Sollte der hier beschriebene Bug mit einer
neueren Version von UCS erneut auftreten, so sollte der Bug dupliziert werden:
"Clone This Bug".