Professor M.Sc. Thiago Leite [email protected]

Transcrição

Professor M.Sc. Thiago Leite [email protected]
Preparatório LPIC-1
Tópico 103.5
Professor M.Sc. Thiago Leite
[email protected]
quinta-feira, 8 de agosto de 13
1
Tópico 103.5
Fonte: http://wiki.lpi.org/wiki/LPIC-1_Objectives#103.5_Create.2C_monitor_and_kill_processes
•
Conhecimentos necessários
•
•
Executar jobs em foreground e background
•
•
Monitorar a atividade de um processo
•
Enviar sinais aos processos
quinta-feira, 8 de agosto de 13
Enviar um sinal a um processo continuar a
execução após o logout
Selecionar e organizar processos para
visualização
2
Tópico 103.5
Fonte: http://wiki.lpi.org/wiki/LPIC-1_Objectives#103.5_Create.2C_monitor_and_kill_processes
•
Lista de arquivos,
ferramentas e
utilitários
•
•
•
•
quinta-feira, 8 de agosto de 13
&
bg
fg
jobs
•
•
•
•
•
•
•
kill
nohup
ps
top
free
uptime
killall
3
Tópico 103.5
• Criar, monitorar e finalizar processos
• maior parte dos processos iniciam,
executam e finalizam sem a intervenção
do usuário
• o usuário pode interferir no
funcionamento dos processos
quinta-feira, 8 de agosto de 13
4
Tópico 103.5
• Processos
• quando os programs (estáticos) são
levados a memória para serem executados
se tornam processos
• todo comando executado se torna um
processo
• processos criados por processos são
processos filhos
quinta-feira, 8 de agosto de 13
5
Tópico 103.5
•
Processos possuem atributos
•
•
•
lifetime - tempo que o processo gastou executando.
•
Parent process - processo que criou outro processo. O primeiro
processo do sistema chama-se init e possui PID 1.
•
•
Parent Process ID (PPID) - PID do processo que criou o processo filho.
•
Current working directory - diretório padrão associado a um processo.
quinta-feira, 8 de agosto de 13
Process ID (PID) - número de identificação de um processo.
User ID (UID) e Group ID (GID) - privilégios associados a um
processo.
Environment - variáveis associadas a um processo. Um processo filho
geralmente possui as variáveis de ambiente do processo pai.
6
Tópico 103.5
•
Comando ps
•
•
quinta-feira, 8 de agosto de 13
estado dos processos em um determinado instante
opções
•
•
•
•
•
•
•
•
-a - todos os processos associados ao terminal
-f - lista completa do parentesco dos processos e argumentos associados
-l - lista longa de atributos associados aos processos
-u - informações sobre usuários dos processos
-w - permite exibir informações mais longas que a linha do terminal
-x - apresenta processos não associados a terminais
-C cmd - apresenta instâncias de cmd
-U usuario - apresenta processos de “usuario”
7
Tópico 103.5
• Exemplos do comando ps
$ ps -­‐aux
$ ps u -­‐C httpd
$ ps aux | grep bash
quinta-feira, 8 de agosto de 13
8
Tópico 103.5
•
Comando pstree
•
•
exibe de modo hierárquico os processos
opções
•
•
•
•
•
-a - exibe argumentos dos processos
-c - exibe processos suprimidos
-h - destaca o processo atual
-n - organizar por PID
-p - exibe o PID dos processos
# pstree -­‐nhacp
quinta-feira, 8 de agosto de 13
9
Tópico 103.5
•
Comando top
•
exibe os processos em outro formato e atualiza as
informações esporadicamente
•
opções
quinta-feira, 8 de agosto de 13
•
•
•
•
•
-b - executa o comando em modo batch
-d intervalo - especifica o intervalo de atualizações
-i - apresenta apenas os processos mais interessantes
-n num - número de atualizações limitadas
-s - executa top em modo seguro
10
Tópico 103.5
•
Comandos de uso interativo do top
•
•
•
•
•
•
•
quinta-feira, 8 de agosto de 13
“espaço” - atualiza o estado dos processos no momento
h - apresenta imagem de ajuda
k - envia sinal a um processo
n - modifica o número de processos a exibir
q - finaliza o top
r - modifica a prioridade de um processo
s - modifica o tempo de atualizações
11
Tópico 103.5
• Exemplos de uso do comando top
$ top -­‐d 1
$ top -­‐bi -­‐n 5 -­‐d 1>processos_agora.txt
quinta-feira, 8 de agosto de 13
12
Tópico 103.5
•
Comando free
•
•
mostra a quantidade de memória física disponível
opções
•
•
•
•
•
-b - apresenta os números em bytes
-k - apresenta os números em kilobytes
-m - apresenta os números em megabytes
-t - apresenta os totais
-s n - apresenta novos resultados a cada n segundos
$ free -­‐s 1
quinta-feira, 8 de agosto de 13
13
Tópico 103.5
• Comando uptime
• informações sobre o sistema e quanto
tempo está em funcionamento desde o
início do sistema
$ uptime
quinta-feira, 8 de agosto de 13
14
Tópico 103.5
• Processos quando executando ficam a
espera de sinais (signals)
• Sinais são mensagens enviadas para
comunicação entre processos
• não possuem strings, apenas um número
de identificação
• existem 32 tipos diferentes de eventos a
serem enviados aos processos
quinta-feira, 8 de agosto de 13
15
Sinal
Num
Descrição
HUP
1
Reler as configurações de um serviço
INT
2
Solicitar a interrupção de um processo (Ctrl+C)
KILL
9
Finalizar um processo incondicionalmente
TERM
15
Solicitar uma interrupção suave de um processo
TSTP
20
Solicitar uma pausa no processo
CONT
18
Solicitar a prosseguimento de um processo (Ctrl+Z)
Sinais mais utilizados
quinta-feira, 8 de agosto de 13
16
Tópico 103.5
•
Comando kill
•
•
•
envio de um sinal a um processo
se não especificado o sinal, é enviado o SIGTERM por padrão
opções
•
-l n - exibe o nome do sinal considerando que n é o número
correspondente ao sinal
$ kill 1000 1001
$ kill -­‐15 1000 1001
$ kill -­‐SIGTERM 1000 1001
$ kill -­‐sigterm 1000 1001
$ kill -­‐TERM 1000 1001
$ kill -­‐s 15 1000 1001
$ kill -­‐s SIGTERM 1000 1001
quinta-feira, 8 de agosto de 13
17
Tópico 103.5
• Controle de Jobs
• o shell permite criar jobs em background
ou foreground
• background - sem a interação do
usuário
• foreground - com a interação do
usuário
quinta-feira, 8 de agosto de 13
18
Tópico 103.5
•
Iniciando processos em background
$ firefox &
[1] 2060
$ jobs
[1]+ Running firefox &
$ bg
[1]+ /usr/bin/firefox &
quinta-feira, 8 de agosto de 13
19
Tópico 103.5
• Se um job estiver em foreground é possível
enviá-lo para background
[Ctrl+Z]
[1]+ Stopped firefox
$ fg 1
firefox
quinta-feira, 8 de agosto de 13
20
Tópico 103.5
• Comando nohup
• desanexar um processo de um terminal
$ nohup firefox &
[1] 2171
$ nohup: ignoring input and appending output to `nohup.out'
quinta-feira, 8 de agosto de 13
21

Documentos relacionados