Welche Parameter hat ulimit?

11

Ich sehe in Beispielen, dass die -uOption mit dem ulimitBefehl verwendet wird, aber ich kann keine Dokumentation finden, die besagt, was diese Option bedeutet. man ulimitzeigt das Handbuch für eine Systembibliotheksfunktion. Welche Möglichkeiten gibt ulimites und was bedeuten sie?

Mnementh
quelle

Antworten:

9

Der Befehl ulimit ist ein integrierter Befehl, der die von man beschriebenen C-Funktionen verwendet: Die eigene Hilfe ist in der Bash-Manpage enthalten, auf die mit zugegriffen werden kann man bash.

Sie können alle verfügbaren Optionen mit auflisten ulimit -hund ihre entsprechende Bedeutung anzeigen, indem Sie ulimit -aalle verfügbaren Arten von Einschränkungen und ihre aktuellen Werte in Abhängigkeit von Ihrem System auflisten:

core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 20
file size               (blocks, -f) unlimited
pending signals                 (-i) 16382
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) unlimited
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
Eureka
quelle
1
Beachten Sie, dass dies ulimit -hnicht überall unterstützt wird - zumindest nicht in Bash 4.2.25.
DreadPirateShawn
ulimit -h listet nichts davon in zB Ubuntu 16.04
matt
8

ulimitmuss eine integrierte Shell sein, da das festgelegte Limit sowohl für die Shell selbst als auch für die von ihr gestarteten Programme gilt. Das einzige tragbare Argument ist -f(Dateigrößenbeschränkung in 512-Byte-Einheiten). Die meisten Shells haben mehr Optionen. Sie müssen die Shell-Dokumentation überprüfen, um genau zu wissen, was sie sind. Bei tragbaren Shells wie bash und ksh unterstützen einige Unix-Varianten möglicherweise kein Limit, selbst wenn die entsprechende Option von der Shell erkannt wird.

Optionen, die von jeder Shell unterstützt werden, die ich gesehen habe:

  • -H: Kombinieren Sie mit anderen Optionen, um nur das harte Limit festzulegen oder anzuzeigen.
  • -S: Kombinieren Sie mit anderen Optionen, um nur das Soft-Limit festzulegen oder anzuzeigen.
  • -c: maximale Kerndateigröße (512-Byte-Blöcke)
  • -d: maximale Größe des Heapspeichers (Datensegments) (kB)
  • -f: maximale Dateigröße (512-Byte-Blöcke)
  • -n: maximale Anzahl von Dateideskriptoren
  • -s: maximale Stapelgröße (kB)
  • -t: maximale CPU-Zeit (en)

Einige andere sehr häufige Optionen:

  • -a: Alle Grenzwerte anzeigen.
  • -m: maximale physische Speichergröße (kB)
  • -v: maximale Größe des virtuellen Speichers (kB)
Gilles 'SO - hör auf böse zu sein'
quelle