Gostaria de limitar qualquer processo de usar mais de 500 MB de RAM. AFAIK isso é feito usando RSS em /etc/security/limits.conf mas o processo chamado gnome-panel aparentemente está usando 618436 kB de VmRSS. Como isso pode ser ?
/etc/security/limits.conf * difícil rss 512000
nomedeusuario@debian:~$ cat /proc/3002/status Nome: painel gnome Estado: S (dormindo) Tgid: 3002 Pid: 3002 PPid: 2910 TracePid: 0 Uid: 1000 1000 1000 1000 Dou: 1000 1000 1000 1000 Tamanho FDS: 64 Grupos: 20 24 25 29 44 46 112 116 117 1000 1002 1003 VMPico: 916636 kB Tamanho da VM: 916636 KB VMLck: 0 kB VMHWM: 618436 kB VMRSS: 618436 kB Dados VM: 601972 kB VMStk: 104 kB VMExe: 516 kB VMLib: 29.232 kB VmPTE: 1760 kB Tópicos: 1 SigQ: 0/14001 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 Assinatura: 0000000020001000 SigCgt: 0000000180000000 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: ffffffffffffff CPU_permitido: 3 Cpus_allowed_list: 0-1 Mems_permitido: 00000000,00000001 Mems_allowed_list: 0 voluntários_ctxt_switches: 871965 não-voluntários_ctxt_switches: 47553 PaX: PeMRs
nomedeusuário@debian:~$ cat /proc/3002/limits Limite Soft Limit Hard Limit Unidades Tempo máximo de CPU ilimitado segundos ilimitados Tamanho máximo do arquivo ilimitado bytes ilimitados Tamanho máximo dos dados ilimitados bytes ilimitados Tamanho máximo da pilha 8388608 bytes ilimitados Tamanho máximo do arquivo principal 0 0 bytes Conjunto máximo de residentes 524288000 524288000 bytes Máximo de processos 100 100 processos Máximo de arquivos abertos 1024 1024 arquivos Memória bloqueada máxima 65536 65536 bytes Espaço máximo de endereço ilimitado bytes ilimitados Arquivo máximo bloqueia bloqueios ilimitados e ilimitados Máximo de sinais pendentes 14001 14001 sinais Tamanho máximo da fila de mensagens 819200 819200 bytes Máxima prioridade agradável 0 0 Prioridade máxima em tempo real 0 0 Tempo limite máximo em tempo real ilimitado ilimitado nós
Responder1
Encontrei esta solução depois de olhar aqui:http://shortrecipes.blogspot.de/2009/04/limitsconf-virtual-memory-limit.html
Para o seu exemplo:
* hard as 512000
Isso parece ser equivalente a ulimit -v 512000
, aplicado no momento em que você faz login em sua conta.
Responder2
limits.conf(5)
página de manual diz:
rss
maximum resident set size (KB) (Ignored in Linux 2.4.30 and higher)
Responder3
Não conheço uma maneira de limitar isso por processo, mas você pode restringir o tamanho total de RSS (e outros) de um grupo de processos com ocontrolador de recursos de memória.
Responder4
O limite RSS em limites.conf não funcionará em kernels > 2.4.30.
Você deve usarGrupos C