Sie möchten ulimit verwenden
ulimit kann unter anderem zur Begrenzung der Speichernutzung verwendet werden
Hier ist ein Beispiel für die Einstellung des Speicherverbrauchs so niedrig, dass
/bin/ls
(der größer ist als/bin/cat
) nicht mehr funktioniert, aber/bin/cat
immer noch funktioniert.$ ls -lh /bin/ls /bin/cat -rwxr-xr-x 1 root root 25K May 24 2008 /bin/cat -rwxr-xr-x 1 root root 88K May 24 2008 /bin/ls $ date > test.txt $ ulimit -d 10000 -m 10000 -v 10000 $ /bin/ls date.txt /bin/ls: error while loading shared libraries: libc.so.6: failed to map segment from shared object: Cannot allocate memory $ /bin/cat date.txt Thu Mar 26 11:51:16 PDT 2009 $
Hinweis: Wenn ich die Grenzwerte auf 1000 Kilobyte festlege, funktioniert keines der beiden Programme, da sie Bibliotheken laden, die ihre Größe erhöhen. über 1000 KB.
-d Datensegmentgröße
-m maximale Speichergröße
-v Größe des virtuellen Speichers
Führen Sie ulimit -a aus, um alle Ressourcenkappen anzuzeigen, die ulimits setzen können.