Revamp LTSP: Disk Quotas: Unterschied zwischen den Versionen
(init (erzeugt aus markdown text /data/Intern/Admin/pingu/ltsp-disk-quota-notes_cem.txt)) |
|||
(9 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt) | |||
Zeile 11: | Zeile 11: | ||
Vorgehen gem.: https://wiki.archlinux.org/index.php/Disk_quota | Vorgehen gem.: https://wiki.archlinux.org/index.php/Disk_quota | ||
− | usrquota als Mount Option in der fstab eingetragen | + | '''usrquota''' als Mount Option in der fstab eingetragen |
<pre>/dev/xvda4 /home ext4 nodev,nosuid,usrjquota=aquota.user,jqfmt=vfsv0 0 1</pre> | <pre>/dev/xvda4 /home ext4 nodev,nosuid,usrjquota=aquota.user,jqfmt=vfsv0 0 1</pre> | ||
Zeile 32: | Zeile 32: | ||
Am besten wird ein extra Benutzer für quotas festgelegt. quotas können dann an diesem eingestellt werden. | Am besten wird ein extra Benutzer für quotas festgelegt. quotas können dann an diesem eingestellt werden. | ||
− | quotauser (als systembenutzer) erstellt. | + | ''quotauser'' (als systembenutzer) erstellt. |
− | quota für quotauser festlegen. | + | quota für ''quotauser'' festlegen. |
<pre># edquota quotauser</pre> | <pre># edquota quotauser</pre> | ||
Zeile 45: | Zeile 45: | ||
<pre># edquota -p quotauser <username></pre> | <pre># edquota -p quotauser <username></pre> | ||
− | Diesen in /etc/adduser.conf eintragen: | + | Diesen in '''/etc/adduser.conf''' eintragen: |
<pre>QUOTAUSER="quotauser"</pre> | <pre>QUOTAUSER="quotauser"</pre> | ||
+ | |||
+ | == Sortierte Ausgabe von repquota == | ||
+ | Befehl zum Anzeigen der quotas, Benutzer mit der höchsten Belegung am Ende der Liste: | ||
+ | |||
+ | <pre># repquota -s /home | sort -hk3</pre> | ||
+ | |||
+ | == warnquota == | ||
+ | |||
+ | Am liebsten ist es uns, wenn unsere Benutzer benachrichtigt werden, sobald sie ihre softlimits übersteigen. Sonst merken wir es ja erst, wenn sie sich beschweren, dass sie sich nicht mehr anmelden können. | ||
+ | |||
+ | Bei Debian ist zum Glück normalerweise ein Eintrag in '''/etc/cron.daily''' vorhanden, der '''/usr/sbin/warnquota''' aufruft. Diesen muss man nur in '''/etc/default/quota''' aktivieren: | ||
+ | |||
+ | <pre> | ||
+ | # Set to "true" if warnquota should be run in cron.daily | ||
+ | run_warnquota=true | ||
+ | </pre> | ||
+ | |||
+ | Den Text des Emails und Weiteres kann man in '''/etc/warnquota.conf''' anpassen. | ||
+ | <pre> | ||
+ | ; ; and # type comments are allowed | ||
+ | # and even blank lines | ||
+ | |||
+ | # values can be quoted: | ||
+ | MAIL_CMD = "/usr/sbin/sendmail -t" | ||
+ | FROM = "root@localhost" | ||
+ | # but they don't have to be: | ||
+ | SUBJECT = Dir geht bald der Speicherplatz aus! | ||
+ | CC_TO = "administration@emaildomain.tld" | ||
+ | SUPPORT = "bluemchen@emaildomain.tld" | ||
+ | PHONE = "1100101" | ||
+ | # | ||
+ | CHARSET = UTF-8 | ||
+ | MESSAGE = Hallo %i, ich habe festgestellt, dass dir langsam\ | ||
+ | der Speicherplatz ausgeht. Schau mal, ob du irgendwo grosse Dateien hast,\ | ||
+ | die eigentlich am besten in auf einem externen Speichermedium gespeichert werden sollten,\ | ||
+ | und leere bitte deinen Papierkorb und Browser Caches.| | ||
+ | </pre> | ||
+ | |||
+ | Damit die Emails nicht nur auf das lokale Benutzerkonto, wo sie sowieso niemand liest, geschickt werden, müssen wir '''/etc/aliases''' anpassen, z.B.: | ||
+ | |||
+ | User: Emailadresse | ||
+ | <pre> | ||
+ | fbar: foo.bar@emaildomain.tld | ||
+ | achains: alice@wonderland.bt | ||
+ | bjindal: bobby.jindal@whitehouse.gov | ||
+ | ctevez: carlos.tevez@whufc.co.uk | ||
+ | </pre> | ||
+ | |||
+ | Und so weiter. | ||
+ | |||
+ | Eventuell muss der Mail-Transport-Agent (MTA) noch konfiguriert werden, um Emails zu anderen Domains schicken zu können. | ||
+ | |||
+ | Bei Debian verwenden wir exim4, den wir wie folgt konfigurieren: | ||
+ | <pre> | ||
+ | dpkg-reconfigure exim4-config | ||
+ | </pre> | ||
+ | Auswahl: | ||
+ | *Internet site | ||
+ | *System mail name: | ||
+ | **FQDN mit gültigem reverse-Eintrag, damit die Emails auch vom Email-Server empfangen werden | ||
+ | *IP-addresses to listen on: | ||
+ | *127.0.0.1 ; ::1 | ||
+ | **Nur von localhost Emails akzeptieren | ||
+ | *Other destinations | ||
+ | *Leer lassen | ||
+ | *Domains to relay mail for: | ||
+ | *Leer lassen | ||
+ | *Machines to relay mail for: | ||
+ | *Leer lassen | ||
+ | *Keep number of DNS-queries minimal (Dial-on-Demand) | ||
+ | *Nein | ||
+ | *Delivery method for local mail: | ||
+ | *Nach Belieben, normalerweise mbox | ||
+ | *Split configuration into small files: | ||
+ | *Nach Belieben | ||
+ | |||
+ | |||
[[Category: Systemadministration]][[Category: LTSP]] | [[Category: Systemadministration]][[Category: LTSP]] |
Aktuelle Version vom 8. Juli 2015, 15:04 Uhr
Gemäss Admin-Sitzung und Planung (siehe Doku) wollen wir den nutzbaren Platz in den home Verzeichnissen Begrenzen.
Stichwort: "Disk quota"
Resourcen: https://www.debian-administration.org/article/47/Limiting_your_users_use_of_disk_space_with_quotas
Auslegung: 100 GB auf 50 Benutzer --> 2GB pro Benutzer
Einrichtung
Vorgehen gem.: https://wiki.archlinux.org/index.php/Disk_quota
usrquota als Mount Option in der fstab eingetragen
/dev/xvda4 /home ext4 nodev,nosuid,usrjquota=aquota.user,jqfmt=vfsv0 0 1
Home remounten:
# mount -vo remount /home
Quotaindex erstellen:
# quotacheck -vgum /home
Aktivieren: (Dies sollte von der systemd Einheit quota.service beim booten erledigt werden. Jetzt manuell gemacht da nicht neugestartet.)
# quotaon -av
Modul quota_v2 --> ist dieses noch nötig ? --> wird es beim boot automatisch geladen ?
Konfiguration
Quotas festlegen
# edquota $USER
Am besten wird ein extra Benutzer für quotas festgelegt. quotas können dann an diesem eingestellt werden.
quotauser (als systembenutzer) erstellt.
quota für quotauser festlegen.
# edquota quotauser
Disk quotas for user quotauser (uid 999): Filesystem blocks soft hard inodes soft hard /dev/xvda4 0 2000000 2100000 0 0 0
Bemerkung: Der Benutzer muss ein homedirectory unter /home haben, damit er von repquota angezeigt wird.
quotas von diesem Benutzer kopieren:
# edquota -p quotauser <username>
Diesen in /etc/adduser.conf eintragen:
QUOTAUSER="quotauser"
Sortierte Ausgabe von repquota
Befehl zum Anzeigen der quotas, Benutzer mit der höchsten Belegung am Ende der Liste:
# repquota -s /home | sort -hk3
warnquota
Am liebsten ist es uns, wenn unsere Benutzer benachrichtigt werden, sobald sie ihre softlimits übersteigen. Sonst merken wir es ja erst, wenn sie sich beschweren, dass sie sich nicht mehr anmelden können.
Bei Debian ist zum Glück normalerweise ein Eintrag in /etc/cron.daily vorhanden, der /usr/sbin/warnquota aufruft. Diesen muss man nur in /etc/default/quota aktivieren:
# Set to "true" if warnquota should be run in cron.daily run_warnquota=true
Den Text des Emails und Weiteres kann man in /etc/warnquota.conf anpassen.
; ; and # type comments are allowed # and even blank lines # values can be quoted: MAIL_CMD = "/usr/sbin/sendmail -t" FROM = "root@localhost" # but they don't have to be: SUBJECT = Dir geht bald der Speicherplatz aus! CC_TO = "administration@emaildomain.tld" SUPPORT = "bluemchen@emaildomain.tld" PHONE = "1100101" # CHARSET = UTF-8 MESSAGE = Hallo %i, ich habe festgestellt, dass dir langsam\ der Speicherplatz ausgeht. Schau mal, ob du irgendwo grosse Dateien hast,\ die eigentlich am besten in auf einem externen Speichermedium gespeichert werden sollten,\ und leere bitte deinen Papierkorb und Browser Caches.|
Damit die Emails nicht nur auf das lokale Benutzerkonto, wo sie sowieso niemand liest, geschickt werden, müssen wir /etc/aliases anpassen, z.B.:
User: Emailadresse
fbar: foo.bar@emaildomain.tld achains: alice@wonderland.bt bjindal: bobby.jindal@whitehouse.gov ctevez: carlos.tevez@whufc.co.uk
Und so weiter.
Eventuell muss der Mail-Transport-Agent (MTA) noch konfiguriert werden, um Emails zu anderen Domains schicken zu können.
Bei Debian verwenden wir exim4, den wir wie folgt konfigurieren:
dpkg-reconfigure exim4-config
Auswahl:
- Internet site
- System mail name:
- FQDN mit gültigem reverse-Eintrag, damit die Emails auch vom Email-Server empfangen werden
- IP-addresses to listen on:
- 127.0.0.1 ; ::1
- Nur von localhost Emails akzeptieren
- Other destinations
- Leer lassen
- Domains to relay mail for:
- Leer lassen
- Machines to relay mail for:
- Leer lassen
- Keep number of DNS-queries minimal (Dial-on-Demand)
- Nein
- Delivery method for local mail:
- Nach Belieben, normalerweise mbox
- Split configuration into small files:
- Nach Belieben