LPI Bibliotecas, localização e tempo SENAC TI Fernando Costa Gerência de Processos no Linux AlkaLinux 101 – páginas 38-40 PID – Process IDentifier • Número de identificação do processo • Cada processo tem o seu PPID – Parent Process IDentifier • Número do processo pai que gerou um processo filho. • Processo pai é o processo copiado. • Processo filho é a cópia. UID – User IDentifier • Número do usuário atribuído pelo sistema. • Varia de 0 a 65535. • Usuário Root é 0. GID – Group IDentifier • Identifica o grupo a que pertence o usuário. • Número varia de 0 a 65535. • O grupo 0 tem privilégios de Root. • O usuário que pertence ao GID 0 tem os mesmos privilégios de Root. SINAIS • Cada sinal monitora e modifica o comportamento do processo • Se o processo pode tratar o sinal, ele o fará no menor tempo possível. • Se o processo não pode tratar o sinal, o Linux vai tratá-lo e interferir no comportamento do processo. SINAIS • • • • • SIGHUP - Termina ou reinicia o processo. Valor numérico 1. SIGINT - Interrompe o processo, igual a Ctrl+c. Valor numérico: 2. SIGQUIT - Fecha o processo. Valor numérico: 3. SIGKILL - Força a finalização o processo. Valor numérico: 9. SIGTERM - Pede ao processo para finalizar. Valor numérico: 15. KILL • kill – mata um processo através de um sinal • kill -HUP 4230 (reinicia o processo 4230) • kill -9 4230 (mata o processo sem piedade) • kill -SIGTERM 4220 (termina o processo) KILLALL • Mata o processo pelo nome. • Usa-se do mesmo modo que o kill. • No lugar do PID usa-se o nome do processo. • killall -9 vi (vi é o nome do processo). NICE – prioridade do processo • Menos importante: -19 • Mais importante: +19 • nice -5 ntpd (o processo ntpd recebe o número -5 de prioridade) RENICE • Modifica o nice de um processo que já está executando. • renice +19 -p 1000 (alterou o nice do processo 1000). • renice +19 -u toninho (alterou o nice dos processos do usuário toninho). • Renice +19 -g casa (alterou o nice dos processos dos usuários do grupo casa). PS • • • • • • • • • • Informações sobre processos e seus atributos. ps (processos do usuário). ps -a (todos os processos). ps -e (variáveis do Linux ligadas ao processo). ps -f (árvore de processos). ps -l (mais campos são exibidos). ps -m (memória ocupada pelo processo). ps -u (usuário e hora de início do processo). ps -x (processos sem terminais). ps -w (informações muito grandes na linha seguinte). CAMPOS DO PS • • • • • • • • • • • • • • • USER – nome do dono do processo. UID – número do dono do processo. PID – identificação do processo. PPID – identificação do processo pai. %CPU - % de cpu usado pelo processo. %MEM - % de memória usada pelo processo. VSZ – tamanho virtual do processo. RSS – quantidade de memória usada. TTY – identificador do terminal do processo. START – hora que o processo iniciou. TIME – tempo que o processo está rodando. COMMAND – nome do comando que executa o processo. PRI – valor da prioridade do processo. NI – valor preciso da prioridade. WCHAN – função do kernel onde o processo está no modo suspenso. CAMPOS DO PS • STAT – indica o estado atual do processo que pode assumir uma das seguintes letras: – – – – – – – – – R – executando D – esperando o disco S – suspenso T – interrompido Z – zumbi W – processo com página em disco < - prioridade maior do que o comum N – prioridade menor que o comum L – alguns recursos bloqueados pelo kernel TOP • Apresenta informações sobre os processos em intervalos regulares (geralmente a cada 10 segundos). OPÇÕES DO TOP • top -d 30 (atualiza o top a cada 30 segundos). • top -c (exibe a linha de comando). • top -i (não mostra processos zumbis). • top -s (exibe o top em modo seguro). • Barra de espaço (atualiza o top na hora). • q (top termina) • h (help do top) JOBS • Exibe processos que estão no segundo plano. • Exibe processos que estão parados. Esses processos não estão utilizando o terminal, portanto, não podem interagir com o usuário. Esses processos continuam rodando enquanto o usuário faz outra coisa no sistema. JOBS • • • • • • • jobs -l (lista os processos através da PID). jobs -r (lista apenas os processos executando). jobs -s (lista apenas os processos parados). + (aparece no job que está no segundo plano). + (aparece no job que parado por último). - (aparece no penúltimo job parado). [num] (número de ordem do jobs para os processos; nada a ver com PID). FG • Passa do segundo para o primeiro plano. • fg +4322 (passa o processo 4322 para foreground, lembrando que 4322 é o número obtido pelo jobs para o processo e não o PID). BG • Passa do primeiro para o segundo plano. • bg +4322 (passa o processo 4322 para background, lembrando que 4322 é o número obtido pelo jobs para o processo e não o PID). FUSER • Exibe e acessa o processo que utiliza determinado arquivo ou diretório. • fuser -k caminho (finaliza o processo). • fuser -u caminho (mostra o dono do proces.). • fuser -v caminho (mostra os processos). PSTREE • Apresenta uma árvore de processos. • pstree -u 3245 (dono do processo 3245). • pstree -p 3245 (PID após o nome do proc.). • pstree -c 3245 (relação de processos ativos). • pstree -g 3245 (caracteres semi gráficos). NOHUP • Processo fica ativo mesmo quando o usuário faz logout. • nohup vi (vi fica ativo mesmo depois do logout). Fernando Costa www.fernandocosta.com.br [email protected]