Script para matar processo.
Bom dia pessoal, gostaria da ajuda de vcs para criar uma solução em Shell Script p/ um probleminha que está ocorrendo em meu servidor. Bom, a ideia é a seguinte: Preciso criar um script que dê um kill em um processo sempre que esse precesso consumir + de 50 megas de RAM, não sei se isso é possível com shell script, se for possível desde já agradeço o auxilio de todos.
Obrigado
Abs
Re: Script para matar processo.
possivel é sim mas com toda certeza vc vai acabar matando coisas essenciais para o sistema, aninda mais se for uma máquina muito utilizada, é melhor vc identificar a fonte do problema e tentar corrigir ou pelo menos melhorar
Re: Script para matar processo.
Humm, me deixou esperançoso com esse "é possível", agradeço a atenção dada ao meu post 1c3m4n. Seguinte, temos um ambiente com RHEL 4, rodado o Aplication Server da Oracle, as vezes dá uns pico de acesso ao site, os 2 componentes OC4J chegam a consumir cerca de 780 megas de RAM (cada processo), quando esses processos são "encerrados" através de um kill por exemplo, o serviço é startado automaticamente e fica quase que transparente para os usuários, porém se esses dois componentes não forem stopados o ambiente fica extremamente lento quando o consumo de memória chega a 700/750 megas por isso que pensei em um script que matasse esses dois processos quando os mesmos consumissem X de memória. Montei um ambiente de teste, e gostaria, que se possível, vcs me ajudassem na construção desse script. Teoricamente matar o processo não é dificil, o problema é que, como todos nós sabemos, os PID's não são valores fixos e mudam conforme são startados/stopados, enfim, agradeço a ajuda de todos.
Abraços
Re: Script para matar processo.
nao da pra faze um tunning desse oracle e desse componente não? meio estranho ele consumir tudo isso, bom mas de qq forma vc pode limitar seus kills com um pequeno grep:
rafael@1c3m4n:~$ ps auxwww
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2640 488 ? S Jun18 0:00 init [2]
for i in $(ps auxwww | grep apache | grep 80.0 | awk {'print $2'}); do kill -9 $i; done
issu ae vai mata qq processo do apache que esteja consumindo mais de 80% da memoria total da máquina, altere pra como vc precisar, mas saiba que isso e GAMBIARRA :D
Re: Script para matar processo.
Citação:
Postado originalmente por 1c3m4n
nao da pra faze um tunning desse oracle e desse componente não? meio estranho ele consumir tudo isso, bom mas de qq forma vc pode limitar seus kills com um pequeno grep:
rafael@1c3m4n:~$ ps auxwww
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.0 2640 488 ? S Jun18 0:00 init [2]
for i in $(ps auxwww | grep apache | grep 80.0 | awk {'print $2'}); do kill -9 $i; done
issu ae vai mata qq processo do apache que esteja consumindo mais de 80% da memoria total da máquina, altere pra como vc precisar, mas saiba que isso e GAMBIARRA :D
Cara acho que isso vai cair como uma luva... mãos a obra. Postarei novamente pra dizer se essa "cambi" deu certo e resolveu meu probleminha ou se me mandaram embora :wink:
Agradeço novamente
Abs
Re: Script para matar processo.
Gostaria de pegar carona neste topico, e perguntar se nao tem como adaptar para matar um determinado processo por ex "_progres", de um usuario que esta sem atividade a um determinado tempo?