9.5 ulimit (Builtin)
Mit ulimit können Sie den Wert einer Ressourcengrenze ausgeben lassen oder neu setzen. Die Syntax:
ulimit [Optionen] [n]
Wird n angegeben, wird eine Ressourcengrenze auf n gesetzt. Hierbei können Sie entweder harte (–H) oder weiche (–S) Ressourcengrenzen setzen. Standardmäßig setzt ulimit beide Grenzen fest oder gibt die weiche Grenze aus. Mit »Optionen« legen Sie fest, welche Ressource bearbeitet werden soll. Tabelle 9.1 nennt die Optionen, die hierzu verwendet werden können.
Tabelle 9.1
Optionen für ulimit
Option
|
Bedeutung
|
–H
|
Harte Grenze. Alle Benutzer dürfen eine harte Grenze herabsetzen, aber nur privilegierte Benutzer können sie erhöhen.
|
–S
|
Weiche Grenze. Sie muss unterhalb der harten Grenze liegen.
|
–a
|
Gibt alle Grenzwerte aus
|
–c
|
Maximale Größe der Speicherabzüge (core-File)
|
–d
|
Maximale Größe eines Datensegments oder Heaps in Kilobyte
|
–f
|
Maximale Anzahl an Dateien (Standardoption)
|
–m
|
Maximale Größe des physischen Speichers in Kilobyte (Bash und Korn-Shell only)
|
–n
|
Maximale Anzahl Filedeskriptoren (plus 1)
|
–p
|
Größe des Pipe-Puffers (Bash und Korn-Shell only, meistens 512 Bytes)
|
–s
|
Maximale Größe eines Stacksegments in Kilobyte
|
–t
|
Maximale CPU-Zeit in Sekunden
|
–u
|
Maximale Anzahl von User-Prozessen
|
–v
|
Maximale Größe des virtuellen Speichers in Kilobyte
|
Einen Überblick, welche Grenzen auf Ihrem System vorhanden sind, können Sie sich mit ulimit und der Option –a verschaffen:
you@host > ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
stack size (kbytes, -s) unlimited
cpu time (seconds, -t) unlimited
max user processes (-u) 2046
virtual memory (kbytes, -v) unlimited
Folgende ulimit-Werte werden z. B. gern eingesetzt, um primitive DOS-(Denial of Service-)Angriffe zu erschweren (natürlich sind die Werte auch abhängig von der Anwendung eines Rechners). Am besten trägt man solche Werte in /etc/profile ein (hierbei sind auch die anderen Profil- und Startup-Dateien in Erwägung zu ziehen). Hier also ein Eintrag in /etc/profile, um dem DOS-Angreifer eine höhere Hürde zu setzen:
# Core Dumps verhindern
ulimit -c 0
# keine Dateien größer 512 MB zulassen
ulimit -f 512000
# weiches Limit von max. 250 Filedeskriptoren
ulimit -S -n 250
# weiches Maximum von 100 Prozessen
ulimit -S -u 100
# Speicherbenutzung max. 50 MB
ulimit -H -v 50000
# weiches Limit der Speichernutzung 20 MB
ulimit -S -v 20000
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.
|