05 - COMANDOS DE PROCESSOS DO LINUX 5.1 - comando top = exibe uma listagem das atividades de processamento em tempo real. Ele lista as tarefas que usam mais intensamente a CPU e pode disponibilizar uma interface interativa de manipulação de processos. Ele pode ordenar os processos por usa de CPU, de memória e tempo de execução. A listagem é atualizada, por padrão, a cada 5 segundos, mas isso pode ser alterado através da opção -d na linha de comando ou -s para o comando interativo. - Especifica 2 segundos do tempo entre as atualizações das telas top -d 2 - Atualiza a tela sem qualquer espera top -q - Indica que top deve ser executado em modo seguro, desabilitando possíveis perigos do modo interativo. É elegante executar um top seguro permanentemente em um terminal extra top -s - Inicia top ignorando qualquer processo inativo ou zumbi. Veja o comando interativo i abaixo top -i - Altera o número de linhas que serao exibidas no monitor top -n numero - Semelhante ao comando kill, para terminar um processo top -k numero-PID 5.2 - comando ps = exibe o status sobre os processos ativos - Exibe informações sobre os processos de outros usuários ps -a - Exibe informações em um formato extenso ps -l - Exibe informações sobre o PID, tty dos comandos que estao rodando ps -e - Exibe informações se algum programa esta rodando ps -ef | grep programa - Exibe apenas os processos que estao em execução ps -r - Exibe os processos em execução no terminal 1 ps -t1 - Exibe os processos em execução no terminal 2 ps -t2 - Exibe um melhor metodo de visualização dos processos ps -auxw - Exibe o processo que está consumindo mais memória ps -auxw | sort +4n - Exibe o processo que está consumindo mais memória ps -auxw | sort +5n - Exibe os usuarios logados na maquina via FTP ps -auxw | grep ftp - Exibe uma lista de todos os processos ps auxw | grep root - Exibe o processo está usando mais CPU ps -auxwww | sed '1d' | sort -r +3 | head - Checa se o serviço 'apache2' está rodando, se estiver, ele é reiniciado ps ax | grep apache2 || /etc/init.d/apache2 restart - Usando o parâmetro '-ef' surgem oito colunas 1. Coluna UID: identifica a ID do dono do processo 2. Coluna PID: identifica o numero ID do processo 3. Coluna PPID: identifica o processo pai 4. Coluna C: indica a quantidade de utilização do processador para escalamento 5. Coluna STIME: indica a hora que o processo foi iniciado 6. Coluna TTY: indica o terminal de controla associado ao processo 7. Coluna TIME: tempo total da execução que o processo acumulou 8. Coluna COMMAND: descreve o nome do processo indicando qual comando esta sendo executado 5.3 - comando kill = finaliza um ou mais processos em execução Opções: -l = exibe os sinais (números e nomes) que podem ser enviados -s = especifica o sinal a ser enviado. O sinal pode ser informado como um dígito ou como um número - Tenta finalizar o programa com o número do processo (PID) kill numero_do_pid - Finaliza o programa com o número do processo (PID) kill -9 numero_do_pid - Censura um determinado usuário kill -9 `ps -aef | grep luser | awk `{ print $2 }'` - Para desconectar um usuário: pkill -u uid_do_usuario 5.4 - comando killall = envia um sinal a todos os processos que estão compartilhando um nome de processo comum entre eles. - Finaliza todos os processos envolvendo tal programa killall -9 programa - Exibe os sinais (numeros e nomes) que podem ser enviados killall -l - Força o programa a enviar o sinal apenas para as combinações exatas de nomes de processo maiores do que 15 caracteres killall -e processo - Solicita configuração antes de enviar o sinal para cada processo killall -i processo - - Reinicia o serviço 'httpd' killall -HUP httpd - Reinicia o servico 'syslogd' killall -HUP syslogd 5.5 - comando jobs = exibe a lista de processos em execução pelo shell jobs jobs -l 5.6 - comando pstree = exibe os processos em forma de uma árvore pstree - Exibe toda estrutura inclusive de sub-processos do processo pai pstree -c - Exibe caracteres graficos no desenho da árvore de processos pstree -G - Exibe e classifica pelo numero PID ao invés do nome pstree -n - Exibe o número PID entre parenteses após o nome do processo pstree -p 5.7 - comando fg = permite que um programa rodando em segundo plano (background) rode em primeiro plano (foreground). Você deve usar o comando 'jobs' para pegar o número do processo rodando em segundo plano ou interrompida, este número será passado ao comando 'fg' para ativa-lo em primeiro plano. fg numero Onde 'numero' é o número obtido através do comando 'jobs'. Caso seja usado sem parâmetros, o comando 'fg' utilizará o último programa interrompido (o maior número obtido com o comando 'jobs'). EX: fg 1 5.8 - comando bg = permite que um programa rodando em primeiro plano (foreground) rode em segundo plano (background). Você deve interromper a execução do programa teclando CTRL+Z. Será mostrado o número da tarefa interrompida. Utilize este número com o comando 'bg' para iniciar a execução do programa em segundo plano (background). bg numero Onde 'numero' é o número do programa obtido com o pressionamento das teclas CTRL+Z ou através do comando 'jobs' 5.9 - comando nohup = executa um comando imune a interrupcoes de conexão com a saída para um dispositivo nao tty, ou seja, deixa o programa em background apos efetuar logoff. - Deixa um programa rodando em background mesmo depois de ter efetuado logoff nohup ./programa & - Evita que o comando caia se você for dar um logout, isso irá gerar um arquivo 'nohup.out' com as saidas nohup tar cvf /dev/st0 /arquivos/* &