Ich möchte jeden Prozess daran hindern, mehr als 500 MB RAM zu verwenden. Soweit ich weiß, geschieht dies mithilfe von RSS in /etc/security/limits.conf, aber der Prozess namens „gnome-panel“ verwendet anscheinend 618436 kB VmRSS. Wie kann das sein?
/etc/security/limits.conf * harter RSS 512000
Benutzername@debian:~$ cat /proc/3002/status Name: Gnome-Panel Status: S (schlafend) Tgid: 3002 PID: 3002 PPid: 2910 TracerPid: 0 Benutzer-ID: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDGröße: 64 Gruppen: 20 24 25 29 44 46 112 116 117 1000 1002 1003 VmPeak: 916636 kB VmGröße: 916636 kB VmLck: 0 kB VmHWM: 618436 kB VmRSS: 618436 kB VmDaten: 601972 kB VmStk: 104 kB VmExe: 516 kB VmLib: 29232 kB VmPTE: 1760 kB Themen: 1 Signal: 0/14001 Signatur: 0000000000000000 Anzahl der Einträge: 000000000000000 Zeichenblock: 0000000000000000 Signatur: 0000000020001000 Signatur: 0000000180000000 Kapitaleinlage: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: ffffffffffffffff Erlaubte CPUs: 3 CPU_allowed_list: 0-1 Mems_allowed: 00000000,00000001 Mems_allowed_list: 0 freiwillige_ctxt_switches: 871965 nicht freiwillige_ctxt_switches: 47553 PaX: PeMRs
Benutzername@debian:~$ cat /proc/3002/limits Limit Soft Limit Hard Limit Einheiten Max. CPU-Zeit unbegrenzt unbegrenzt Sekunden Maximale Dateigröße unbegrenzt unbegrenzt Bytes Maximale Datengröße unbegrenzt unbegrenzt Bytes Maximale Stapelgröße 8388608 unbegrenzte Bytes Maximale Kerndateigröße 0 0 Bytes Max. residenter Satz 524288000 524288000 Bytes Max. Prozesse 100 100 Prozesse Max. geöffnete Dateien 1024 1024 Dateien Max. gesperrter Speicher 65536 65536 Bytes Max. Adressraum unbegrenzt unbegrenzt Bytes Max. Dateisperren unbegrenzt unbegrenzte Sperren Max. ausstehende Signale 14001 14001 Signale Maximale Nachrichtenwarteschlangengröße 819200 819200 Bytes Maximale Nice-Priorität 0 0 Maximale Echtzeitpriorität 0 0 Max. Echtzeit-Timeout unbegrenzt unbegrenzt US
Antwort1
Habe diese Lösung gefunden, nachdem ich hier nachgeschaut habe:http://shortrecipes.blogspot.de/2009/04/limitsconf-virtual-memory-limit.html
Für Ihr Beispiel:
* hard as 512000
Dies scheint gleichbedeutend mit zu sein und ulimit -v 512000
wird angewendet, sobald Sie sich bei Ihrem Konto anmelden.
Antwort2
limits.conf(5)
Manpage sagt:
rss
maximum resident set size (KB) (Ignored in Linux 2.4.30 and higher)
Antwort3
Ich kenne keine Möglichkeit, dies für einzelne Prozesse zu begrenzen, aber Sie können die gesamte RSS-Größe (und andere Größen) einer Gruppe von Prozessen mit demSpeicherressourcen-Controller.
Antwort4
Das RSS-Limit in limits.conf funktioniert nicht in Kerneln > 2.4.30.
Du musst benutzenC-Gruppen