===== Nível Básico =====
=== 1. Informações Básicas do Sistema com `uname` ===
* **uname** - Exibe informações sobre o sistema.
- Exemplo de uso: uname
- Descrição: Mostra o nome do sistema operacional.
* **uname -a** - Exibe informações detalhadas do sistema.
- Exemplo de uso: uname -a
- Descrição: Mostra informações completas sobre o sistema, incluindo o kernel, nome do host e arquitetura da máquina.
=== 2. Verificação de Espaço em Disco com `df` ===
* **df -h** - Exibe o uso de disco em formato legível.
- Exemplo de uso: df -h
- Descrição: Mostra o uso do espaço em disco de todos os sistemas de arquivos montados, com o tamanho exibido em MB ou GB.
=== 3. Verificação de Memória com `free` ===
* **free -h** - Exibe o uso de memória RAM e swap.
- Exemplo de uso: free -h
- Descrição: Mostra o total de memória disponível e em uso no sistema, com valores exibidos de forma legível (em MB/GB).
=== 4. Informações de Uptime com `uptime` ===
* **uptime** - Exibe há quanto tempo o sistema está em funcionamento.
- Exemplo de uso: uptime
- Descrição: Exibe o tempo de atividade do sistema, o número de usuários conectados e a carga média da CPU.
===== Nível Intermediário =====
=== 1. Informações de CPU com `lscpu` ===
* **lscpu** - Exibe informações detalhadas sobre a CPU.
- Exemplo de uso: lscpu
- Descrição: Mostra detalhes sobre o processador, como o número de núcleos, arquitetura, e suporte a virtualização.
=== 2. Listagem de Dispositivos PCI com `lspci` ===
* **lspci** - Exibe uma lista de dispositivos PCI no sistema.
- Exemplo de uso: lspci
- Descrição: Mostra todos os dispositivos PCI conectados ao sistema, como placas de rede, placas gráficas e controladores de armazenamento.
* **lspci -v** - Exibe informações detalhadas dos dispositivos PCI.
- Exemplo de uso: lspci -v
- Descrição: Fornece uma descrição detalhada de cada dispositivo PCI, incluindo o driver utilizado e a alocação de recursos.
=== 3. Listagem de Dispositivos USB com `lsusb` ===
* **lsusb** - Exibe dispositivos USB conectados ao sistema.
- Exemplo de uso: lsusb
- Descrição: Lista todos os dispositivos USB conectados, como pen drives, teclados e webcams.
* **lsusb -v** - Exibe informações detalhadas dos dispositivos USB.
- Exemplo de uso: lsusb -v
- Descrição: Exibe informações detalhadas sobre cada dispositivo USB conectado, incluindo fabricante e descrições.
=== 4. Monitoramento de Processos com `top` e `htop` ===
* **top** - Monitora em tempo real os processos em execução.
- Exemplo de uso: top
- Descrição: Exibe uma lista dos processos ativos no sistema, incluindo uso de CPU, memória e o tempo de execução.
* **htop** - Ferramenta interativa para monitoramento de processos.
- Exemplo de uso: htop
- Descrição: Fornece uma visualização interativa dos processos, permitindo filtrar, ordenar e gerenciar processos de maneira mais amigável do que o ''top'' tradicional.
=== 5. Informações de Kernel e Versão do Sistema com `hostnamectl` ===
* **hostnamectl** - Exibe ou modifica informações sobre o sistema.
- Exemplo de uso: hostnamectl
- Descrição: Exibe o nome do host, a versão do sistema operacional e a versão do kernel em uso.
===== Nível Avançado =====
=== 1. Análise de Logs do Sistema com `journalctl` ===
* **journalctl** - Exibe logs do systemd.
- Exemplo de uso: sudo journalctl
- Descrição: Exibe todos os logs gerados pelo ''systemd'', incluindo inicialização do sistema, eventos e erros.
* **journalctl -xe** - Exibe logs recentes com mensagens de erro e eventos críticos.
- Exemplo de uso: sudo journalctl -xe
- Descrição: Mostra os logs mais recentes com destaque para eventos críticos e erros, útil para diagnóstico de falhas no sistema.
=== 2. Monitoramento de Utilização de Disco com `iotop` ===
* **iotop** - Monitora o uso de I/O de disco em tempo real.
- Exemplo de uso: sudo iotop
- Descrição: Exibe processos que estão realizando operações de leitura e escrita no disco, útil para identificar gargalos de I/O.
=== 3. Verificação de Estado de Serviços com `systemctl` ===
* **systemctl status** - Verifica o status de um serviço.
- Exemplo de uso: sudo systemctl status apache2
- Descrição: Exibe o status do serviço ''apache2'', incluindo se está ativo, quando foi iniciado e logs recentes do serviço.
* **systemctl is-active** - Verifica se um serviço está em execução.
- Exemplo de uso: sudo systemctl is-active nginx
- Descrição: Verifica se o serviço ''nginx'' está em execução e retorna seu estado (''active'', ''inactive'', etc.).
=== 4. Diagnóstico de Redes com `ss` ===
* **ss -tuln** - Exibe conexões de rede ativas e portas abertas.
- Exemplo de uso: ss -tuln
- Descrição: Lista todas as conexões TCP e UDP ativas, juntamente com as portas abertas, útil para identificar serviços de rede em execução.
* **ss -s** - Mostra estatísticas resumidas de conexões de rede.
- Exemplo de uso: ss -s
- Descrição: Exibe um resumo das conexões TCP, UDP e outros protocolos, útil para diagnosticar problemas de conectividade ou sobrecarga de rede.
=== 5. Monitoramento de Temperatura e Sensores com `sensors` ===
* **sensors** - Exibe a temperatura dos componentes do sistema.
- Exemplo de uso: sensors
- Descrição: Mostra informações sobre a temperatura da CPU, placa-mãe, e outros sensores de hardware disponíveis, útil para monitorar o desempenho térmico.
* **sensors-detect** - Detecta e configura sensores de hardware.
- Exemplo de uso: sudo sensors-detect
- Descrição: Executa uma verificação para detectar sensores de hardware no sistema e os configura para monitoramento.
=== 6. Análise de Consumo de Memória com `smem` ===
* **smem** - Exibe o uso de memória por processo.
- Exemplo de uso: smem
- Descrição: Mostra o consumo de memória RAM e swap por cada processo, ajudando a identificar processos que estão consumindo muita memória.
* **smem -r** - Ordena o uso de memória por processos.
- Exemplo de uso: smem -r
- Descrição: Lista os processos em ordem decrescente de uso de memória, facilitando a identificação de processos que estão consumindo mais recursos.
===== Nível Especializado =====
=== 1. Análise Avançada de Desempenho com `perf` ===
* **perf stat** - Coleta estatísticas de desempenho.
- Exemplo de uso: sudo perf stat ls
- Descrição: Executa o comando ''ls'' e exibe estatísticas de desempenho, como ciclos de CPU, instruções e cache miss, útil para análise detalhada do desempenho de comandos e processos.
* **perf top** - Monitora o uso de CPU em tempo real.
- Exemplo de uso: sudo perf top
- Descrição: Exibe os processos que mais utilizam CPU em tempo real, mostrando onde estão ocorrendo gargalos de desempenho.
=== 2. Auditoria de Acessos e Eventos com `auditd` ===
* **auditctl** - Configura regras de auditoria no sistema.
- Exemplo de uso: sudo auditctl -w /etc/passwd -p wa -k monitor_passwd
- Descrição: Monitora o arquivo ''/etc/passwd'' para registrar eventos de escrita e alteração, utilizando a chave de auditoria ''monitor_passwd'' para facilitar a busca.
* **ausearch** - Pesquisa eventos de auditoria.
- Exemplo de uso: ausearch -k monitor_passwd
- Descrição: Busca no log de auditoria todos os eventos relacionados à chave ''monitor_passwd'', permitindo verificar quem tentou modificar o arquivo.
=== 3. Análise de Rede e Pacotes com `tcpdump` ===
* **tcpdump** - Captura e analisa pacotes de rede.
- Exemplo de uso: sudo tcpdump -i eth0
- Descrição: Captura todos os pacotes que passam pela interface de rede ''eth0'', exibindo detalhes de cada pacote como IP de origem, destino e protocolo.
* **tcpdump -w** - Salva a captura de pacotes em um arquivo.
- Exemplo de uso: sudo tcpdump -i eth0 -w captura.pcap
- Descrição: Captura pacotes da interface ''eth0'' e os salva no arquivo ''captura.pcap'' para análise posterior com ferramentas como Wireshark.
=== 4. Monitoramento de Sistema com `sysstat` ===
* **sar** - Coleta e exibe estatísticas de desempenho do sistema.
- Exemplo de uso: sar -u 1 5
- Descrição: Mostra o uso da CPU a cada segundo, por 5 vezes, permitindo identificar períodos de alta carga de CPU.
* **iostat** - Exibe estatísticas de I/O do sistema.
- Exemplo de uso: iostat -d 1
- Descrição: Monitora as operações de entrada/saída (I/O) de dispositivos de armazenamento a cada segundo, útil para identificar problemas de desempenho no disco.
=== 5. Análise de Boot com `systemd-analyze` ===
* **systemd-analyze blame** - Exibe os tempos de inicialização dos serviços.
- Exemplo de uso: systemd-analyze blame
- Descrição: Lista os serviços que mais demoraram para iniciar durante o boot, facilitando a identificação de gargalos no tempo de inicialização.
* **systemd-analyze plot** - Gera um gráfico do processo de boot.
- Exemplo de uso: systemd-analyze plot > boot_diagram.svg
- Descrição: Gera um gráfico SVG detalhado mostrando o tempo que cada serviço levou para iniciar durante o boot, útil para análise visual do processo de inicialização.
=== 6. Controle de Cgroup e Limitação de Recursos com `cgcreate` ===
* **cgcreate** - Cria um novo cgroup para controlar o uso de recursos.
- Exemplo de uso: sudo cgcreate -g cpu,memory:/controle_cpu_memoria
- Descrição: Cria um grupo de controle (cgroup) chamado ''controle_cpu_memoria'', que será usado para limitar o uso de CPU e memória de processos.
* **cgset** - Define limites de recursos para um cgroup.
- Exemplo de uso: sudo cgset -r cpu.shares=512 controle_cpu_memoria
- Descrição: Define que o cgroup ''controle_cpu_memoria'' só pode usar 50% da CPU, limitando os recursos disponíveis para os processos associados a esse cgroup.
* **cgexec** - Executa um processo dentro de um cgroup.
- Exemplo de uso: sudo cgexec -g cpu,memory:controle_cpu_memoria /usr/bin/stress --cpu 2
- Descrição: Executa o comando ''stress'', que simula carga de CPU, dentro do cgroup ''controle_cpu_memoria'', limitando o uso de CPU e memória desse processo.