Installationshandbuch:Quotaeinrichten
Archiv: Dieser Artikel beschreibt nicht die Funktionalität des derzeit aktuellen delixs-Servers. Er beschreibt ältere Schulserver-Funktionen und dient dem Zweck der Archivierung. |
Plattenplatzbegrenzung mit Quota
Wer den Arktur-Schulserver intensiv als Fileserver im Netz einsetzt und den Schülern die Freiheit lässt, diesen Speicherbereich für eigene Webseiten und ähnliches zu nutzen, der vermisst schon bald eine Beschränkung des von den Schülern (und Lehrern) genutzten Plattenplatzes auf dem Server. Hierfür ist Quota die Lösung!
Was ist Quota?
Das Quota-Paket erlaubt dem Systemverwalter, unter zwei Aspekten den von den Benutzern genutzten Disk-Speicherbereich zu begrenzen: einerseits kann die Anzahl der von den Nutzern oder einer Gruppe angelegten Dateieinträge (number of inodes), andererseits der Gesamtumfang des genutzten Speicherbereichs auf einer Partition (number of disk blocks) für einen Nutzer oder eine Gruppe begrenzt werden. Der Ansatz des Quota-Pakets zielt also darauf, die Benutzer zu zwingen, bei Verwendung des Speicherplatzes vorgebenene Grenzen einzuhalten.
Für jeden einzelnen Nutzer sind auf jeder Partition verschiedene Vorgaben einstellbar, die zudem in ein Soft- und ein Hardlimit unterteilt sind. Das Softlimit ist eine Grenze, bei der Quota bereits aktiv wird, die man für einen bestimmten Zeitraum überschreiten darf. Die Überschreitung des Softlimits wird dem Benutzer jede Nacht per E-Mail mitgeteilt. Eine Kopie dieser E-Mail erhält der Systemverwalter "root". Bei Unix- und Linux-Clients kann außerdem beim Anmelden eine Warnung erscheinen, dass die Begrenzung überschritten wurde. Das Hardlimit ist die absolute Obergrenze, kann keinesfalls überschritten werden. Das Softlimit muss also kleiner oder höchstens gleich dem Hardlimit gesetzt werden. Sind beide Grenzen gleich, brauchen Sie sich über die "grace period" und diese E-Mails keine Gedanken machen.
Die "grace period" legt fest, wie lange das Softlimit überschritten werden darf. Dieser Parameter ist nicht auf den einzelnen Nutzer bezogen, sondern auf die jeweilige Partition. Standardmäßig gilt bei der Einrichtung für alle Partitionen eine "Grace Period" von 7 Tagen.
Quota komfortabel konfigurieren
Dazu melden Sie sich an der Konsole als sysadm an.
Sie finden die Quotaverwaltung unter Anwender.
Wählen Sie dor Quota aus.
Dort können Sie generelle Vorgaben für alle Schüler machen. Diese Einstellungen gelten aber nur für die Nutzer die Sie in Zukunft anlegen, nicht jedoch für bereits existierende Nutzer.
Sie können nun auswählen, ob Sie die Zeitvorgaben, die Beschränkung für das Homeverzeichnis oder die Beschränkung für das Mail- und Druckspoolverzeichnis ändern wollen.
Wollen Sie die Zeitvorgaben ändern, dann geben Sie zuerst ein, wie lange das Limit im Homeverzeichnis ohne ernsthafte Konsequenzen überschritten werden darf. Der Nutzer erhält bei Überschreitung dieser Grenze nur eine warnende E-Mail zugestellt.
Nun stellen Sie das Limit für das Mailverzeichnis ein.
Sie können jetzt sowohl für das home- als auch für das mail-Verzeichnis die Softlimit-Grenze eintragen. Eine Berechnungsformel für den höchstmöglich zu vergebenden Platz finden Sie weiter unten in diesem Kapitel.
Im Gegensatz zum Softlimit kann die Hardlimitgrenze durch die Nutzer keinesfalls überschritten werden.
Mit der Angabe der Inodes Limits wird die Summe aller Datei und Verzeichniseinträge begrenzt.
Auch hier gilt, dass die Hardlimitgrenze durch die Nutzer keinesfalls überschritten werden kann.
Wollen Sie die Vorgaben auch für schon bestehende Klassen übernehmen, dan Wählen Sie einfach den Punkt Quota kopieren aus
und danach die Klasse, welche die Quotas bekommen soll.
Achtung: Der Punkt "Quota für eine Klasse kopieren" setzt alle einzeln vergebenen Quotas in dieser Klasse auch wieder zurück.
Quotas werden auch dann neu (also auf die Standardwerte) gesetzt, wenn das Homeverzeichnis neu aufgebaut werden muss. Löscht also ein Schüler z.B. das www-pub heraus, wird beim nächsten AKTIVIEREN von Nutzern dessen Quotas zurückgesetzt.
Sie können auch die Quotaeinstellungen von einzelnen Nutzern ändern.
Die Quotavergabe für Lehrer kann nur einzeln vorgenommen werden, eine pauschale Einstellung für alle Lehrer Ihrer Schule ist nicht vorgesehen.
Quota per Hand konfigurieren
Dazu dient das Programm edquota. Normalerweise sollte vor dem Editieren als Benutzer root der Befehl
quotacheck -avu
aufgerufen werden, um sicherzustellen, dass die aktuelle Plattenbelegung in den Quota-Dateien vorliegt.
Erstellen einer Vorlage für die Quotas:
Auf dem Arktur-Schulserver gibt es einen (nicht weiter benutzten) User games. Das Kommando "edquota -u games" startet den Editor für die Bearbeitung der Quotas dieses Beispielbenutzers:
Quotas for user games: /dev/hda5: blocks in use: 0, limits (soft = 1024, hard = 2048) inodes in use: 0, limits (soft = 20, hard = 30) /dev/hda6: blocks in use: 0, limits (soft = 4096, hard = 6144) inodes in use: 0, limits (soft = 400, hard = 500)
- Abbildung: edquota für games
"blocks in use" ist die Gesamtzahl der Blöcke (in Kilobyte), die der Benutzer auf der Partition belegt hat.
"inodes in use" ist die Gesamtzahl der Dateieinträge, die der Benutzer auf der Partition angelegt hat.
Auf der Partition /dev/hda5 hat ein Benutzer eigentlich nur seine Mail-Datei (und ggf. temporäre Dateien beim Drucken), daher wurde in diesem Beispiel ein Softlimit von 1MB und ein Hardlimit von 2MB eingetragen sowie die Anzahl der Dateieinträge auf 20 (max 30) festgesetzt. Auf der Partition /dev/hda6 liegt das Heimatverzeichnis, daher wurden hier größere Werte eingetragen. Wieviel Platz
Sie jedem Nutzer im Heimatverzeichnis lassen, müssen Sie nach der Gesamtgröße der Festplatte entscheiden/berechnen.
Die Berechnung für die /home Partition könnte so aussehen:
Quota=(Partition - Reserve) / Nutzeranzahl
wobei unter Reserve auch alle Dateien und Programme der beiden Nutzer www und adm mit einzubeziehen sind.
Kopieren von Quota-Einstellungen an die anderen Nutzer:
Das schnelle Zuweisen identischer Quota-Setzungen an alle User mit UID ab 2000 (das sind auf dem Arktur-Schulserver die Schüler) oder an alle User mit UID zwischen 1000 und 1999 (das sind auf dem Arktur-Schulserver die Lehrer) kann dann mit dem Befehl
/usr/sbin/copyquota
vorgenommen werden, wobei der User games als Vorlage dient.
Außerdem werden die Voreinstellungen des Nutzers "games" für alle neu angelegten Nutzer sofort übernommen. Sie können mit dem Befehle "edquota" aber für jeden einzelnen Nutzer die Beschränkungen wieder ändern.
Setzen der "grace period"
Mit dem Befehl "edquota -t", kann der Wert der "grace period" gesetzt werden. Benutzte Zeiteinheiten können sec(onds), min(utes), hour(s), day(s), week(s) und month(s) sein. Als root kann mit dem Befehl "edquota -t" mit dem Editor der Zeitraum festgelegt werden:
Time units may be: days, hours, minutes, or seconds Grace period before enforcing soft limits for users: /dev/hda5: block grace period: 7 days, file grace period: 7 days /dev/hda6: block grace period: 21 days, file grace period: 21 days
- Abbildung: edquota -t für Zeiteinstellung
In diesem Beispiel hat ein Nutzer 7 Tage Zeit, die Begrenzung in der Partition /dev/hda5 (also /var) wieder einzuhalten, jedoch 21 Tage für sein Heimatverzeichnis, das auf /dev/hda6 liegt. Diese Grenze muss für mindestens eine Nacht unterschritten bleiben, damit beim nächtlichen Cronjob die Einhaltung der Grenze erkannt und die "grace period" bei diesem Nutzer zurückgesetzt wird. Wenn er innerhalb der gesetzten "grace period" sein Softlimit nicht wieder unterschreitet, wird nach Ablauf dieser Zeit das Softlimit als Obergrenze aktiv und es können keine Daten mehr auf dem Netzlaufwerk geschrieben werden. Unter Linux führt das in Verbindung mit grafischen Oberflächen dazu, dass der Nutzer sich nicht mehr Anmelden kann.
Verschiedene Quota Kommandos
quotacheck
Mit Quotacheck werden die Dateien "quota.user" auf den aktuellen Stand gebracht. Der Arktur-Schulserver führt dieses Kommando jede Nacht automatisch aus. Deshalb erhält root jede Nacht eine E-Mail als Rückmeldung von dieser Funktion.
repquota
Repquota gibt eine Zusammenfassung des von den Nutzern belegten Speicherplatzes aus: Ein Aufruf mit "repquota -av" ergibt:
*** Report for user quotas on /dev/hda5 (/var) Block limits File limits User used soft hard grace used soft hard grace root -- 5615 0 0 563 0 0 bin -- 2 0 0 3 0 0 lp -- 1 0 0 1 0 0 news -- 23 0 0 28 0 0 uucp -- 18 0 0 17 0 0 nobody -- 5030 0 0 4160 0 0 www -- 2 0 0 2 0 0 kwerner -- 4 2048 4096 1 20 40 *** Report for user quotas on /dev/hda6 (/home) Block limits File limits User used soft hard grace used soft hard grace root -- 72231 0 0 236 0 0 adm -- 3342 0 0 20 0 0 nobody -- 5 0 0 1 0 0 ftp -- 670 0 0 6 0 0 www -- 17304 0 0 1898 0 0 kwerner -- 207 4096 6144 35 300 400
- Abbildung: repquota
quota
Quota zeigt die aktuelle Platzbelegung für den Nutzer an. Dieser Befehl steht jedem Nutzer zur Verfügung, um seinen belegten Platz und die eingetragenen Begrenzungen anzuzeigen. Als root können Sie hinter dem Befehl eine Nutzerkennung angeben, um die Angaben für diesen Nutzer anzuzeigen.
quotaon und quotaoff
"quotaon" wird benutzt um die Quota-Funktion per Hand einzuschalten. Mit "quotaoff" wird die Quota-Funktion abgeschaltet. Sie können beide Befehle auch während des normalen Systembetriebes verwenden, um die Quota-Funktion an- oder abzuschalten. Beim Einschalten mittels "quotaon" darf allerdings keine Datei geöffnet sein. Das können Sie meist nicht während des normalen Systemlaufs realisieren.
warnquota
Warnquota versendet Warnungen an die Benutzer per E-Mail. Dieser Befehl wird von Arktur-Schulserver automatisch jede Nacht als Cron-Job ausgeführt. Dadurch werden je Nacht Warnungen an die Nutzer versandt, die ihre Speicherplatzgrenzen überschritten haben. Eine solche per E-Mail zugestellte Warnung sieht dann z.B. so aus:
Message 1/11 From root Aug 5, 98 04:39:00 pm Return-Path: <root> Date: Wed, 5 Aug 98 16:39 MEST Subject: Plattenplatzkontrolle: Grenzueberschreitung To: maxie Cc: root Hallo, Es wurde festgestellt, dass die Plattenplatzbegrenzung auf diesem System ueberschritten wurden. Folgende Konflikte treten auf: Block limits Dateieintraege Filesystem used soft hard grace used soft hard grace /dev/hda6 +- 25384 25000 30000 none 2425 2500 3000 Bitte dafuer sorgen, dass die Ueberschreitung vor Ablauf der Frist beseitigt wird. Das bedeutet, das ein Teil der Dateien auf den angegebenen Partitionen geloescht oder verkleinert werden muss. Wenn der Platz weiterhin nicht freigegeben wird, kann es zu Problemen mit der Anmeldung oder anderer Software (Mail, Drucken, ...) kommen, und es koennen keine Daten mehr gespeichert werden. Fuer weitere Informationen bitte an den Systembetreuer wenden.
- Abbildung: Quota-Warnung
Der Text der "Warnungen" lässt sich mit Hilfe zweier Konfigurationsdateien - allerdings nur sehr beschränkt - ändern: /etc/warnquota.conf und /etc/quotatab.
Diese Beschreibung stellt nur eine Einführung in das Thema Quota dar. Wenn diese Beschreibung nicht ausreicht, sollten Sie weiterführende Literatur zu Rate ziehen.