Me gustaría limitar cualquier proceso que utilice más de 500 MB de RAM. AFAIK, esto se hace usando RSS en /etc/security/limits.conf pero el proceso llamado gnome-panel aparentemente está usando 618436 kB de VmRSS. Cómo puede ser esto ?
/etc/security/limits.conf * rss duro 512000
nombre de usuario@debian:~$ cat /proc/3002/status Nombre: panel-gnomo Estado: S (durmiendo) Tgid: 3002 Pid: 3002 PPid: 2910 TrazadorPid: 0 ID: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDTalla: 64 Grupos: 20 24 25 29 44 46 112 116 117 1000 1002 1003 VmPico: 916636 kB Tamaño Vm: 916636 kB VmLck: 0 kB VmHWM: 618436 kB VmRSS: 618436kB DatosVM: 601972 kB VmStk: 104kB VmExe: 516kB VmLib: 29232 kB VmPTE: 1760 kB Temas: 1 SeñalQ: 0/14001 Firma: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 Firmar: 0000000020001000 SeñalCgt: 0000000180000000 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: ffffffffffffffff CPU_permitidas: 3 Cpus_allowed_list: 0-1 Mems_permitidos: 00000000,00000001 Lista_permitida_mems: 0 interruptores_ctxt_voluntarios: 871965 interruptores_ctxt_no voluntarios: 47553 PaX: PeMR
nombre de usuario@debian:~$ cat /proc/3002/limits Límite suave Límite duro Unidades Tiempo máximo de CPU ilimitado segundos ilimitados Tamaño máximo de archivo ilimitado bytes ilimitados Tamaño máximo de datos ilimitado bytes ilimitados Tamaño máximo de pila 8388608 bytes ilimitados Tamaño máximo del archivo principal 0 0 bytes Conjunto máximo de residentes 524288000 524288000 bytes Procesos máximos 100 100 procesos Máximo de archivos abiertos 1024 1024 archivos Memoria máxima bloqueada 65536 65536 bytes Espacio máximo de direcciones bytes ilimitados ilimitados Bloqueos máximos de archivos ilimitados bloqueos ilimitados Max señales pendientes 14001 14001 señales Tamaño máximo de cola de mensajes 819200 819200 bytes Prioridad máxima agradable 0 0 Prioridad máxima en tiempo real 0 0 Tiempo de espera máximo en tiempo real ilimitado ilimitado nosotros
Respuesta1
Encontré esta solución después de mirar aquí:http://shortrecipes.blogspot.de/2009/04/limitsconf-virtual-memory-limit.html
Para tu ejemplo:
* hard as 512000
Esto parece ser equivalente a ulimit -v 512000
, aplicado en el momento en que inicia sesión en su cuenta.
Respuesta2
limits.conf(5)
página de manual dice:
rss
maximum resident set size (KB) (Ignored in Linux 2.4.30 and higher)
Respuesta3
No conozco una manera de limitar esto por proceso, pero puede restringir el tamaño total de RSS (y otros) de un grupo de procesos con elcontrolador de recursos de memoria.
Respuesta4
El límite de RSS en limits.conf no funcionará en kernels > 2.4.30.
Debes usargrupos C