limits.conf zum Festlegen von Speicherlimits

limits.conf zum Festlegen von Speicherlimits

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 512000wird 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

verwandte Informationen