Processos e Serviços
Aula 5 de 8
Gerenciamento de Processos
ps aux # lista todos os processos
ps -ef # formato completo
top # monitor em tempo real
htop # top melhorado (se instalado)
# Árvore de processos
pstree
ps auxf
Colunas do ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 0.5 167940 11456 ? Ss 10:00 0:03 /sbin/init
| Coluna | Significado |
|---|---|
| USER | Dono do processo |
| PID | Identificador único |
| %CPU | Uso de CPU |
| %MEM | Uso de memória |
| RSS | Memória RAM real (KB) |
| STAT | Estado (S=dormindo, R=executando) |
| TIME | Tempo total de CPU |
Sinais e Kill
kill PID # SIGTERM (15) - pede para encerrar
kill -9 PID # SIGKILL (9) - força encerramento
kill -15 PID # SIGTERM explícito
killall nome-processo # mata todos com o nome
pkill nome # mata por padrão no nome
# Sinais comuns
# 1 = SIGHUP (recarregar config)
# 9 = SIGKILL (matar forçado)
# 15 = SIGTERM (encerrar gracefully)
Systemd — Gerenciamento de Serviços
# Gerenciar serviços
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl reload nginx # recarrega config sem parar
systemctl status nginx
systemctl enable nginx # inicia no boot
systemctl disable nginx # não inicia no boot
# Listar
systemctl list-units # serviços ativos
systemctl list-unit-files # todos os serviços
systemctl --failed # serviços com falha
# Logs (journald)
journalctl -u nginx # logs do serviço
journalctl -u nginx -f # seguir em tempo real
journalctl -u nginx --since "1 hour ago"
Agendamento
# cron
crontab -e # editar tarefas do usuário
crontab -l # listar tarefas
# Formato: minuto hora dia-mês mês dia-semana comando
# 0 2 * * * /script.sh → todo dia às 2h
# */5 * * * * /script.sh → a cada 5 minutos
# 0 9 * * 1 /script.sh → toda segunda às 9h
Processos são a unidade básica de execução no Linux. Aprender a gerenciá-los é essencial para administrar o sistema.