• Comandos Linux para gerenciar Memória e Processos

    Comandos essenciais e exemplos práticos | Herez

    Comandos essenciais e exemplos práticos | Herez

    Post criado por Herez. Guia objetivo com explicação de comandos essenciais para administração de servidores e DevOps.

    Este post descreve comandos básicos de sistema e processos em Linux, detalha o que cada comando faz e traz exemplos profissionais de como Herez os utilizou em operações reais de administração e automação.

    Comandos e explicações

    date

    O que faz: mostra a data e hora atuais do sistema.

    $ date
    Exemplo profissional (Herez): ao investigar logs de um deploy automatizado, Herez usou date para confirmar o timestamp do servidor antes de correlacionar entradas de log entre máquinas em fusos horários diferentes.

    uptime

    O que faz: informa há quanto tempo o sistema está ligado, carga média e usuários conectados.

    $ uptime
    Exemplo profissional (Herez): após um pico de latência, Herez executou uptime para verificar se a carga média estava elevada e correlacionou com um cron job que iniciou no mesmo período.

    whoami

    O que faz: exibe o usuário atual no shell.

    $ whoami
    Exemplo profissional (Herez): durante manutenção remota, Herez usou whoami em scripts de deploy para garantir que comandos críticos eram executados com o usuário correto (evitando executar como root por engano).

    free -h

    O que faz: mostra uso de memória (RAM e swap) em formato legível (-h = human readable).

    $ free -h
    Exemplo profissional (Herez): ao diagnosticar um serviço que consumia memória, Herez rodou free -h antes e depois de reiniciar o serviço para quantificar a redução de uso de memória e ajustar limites de container.

    df -h

    O que faz: exibe espaço em disco usado e disponível em todas as partições, em formato legível.

    $ df -h
    Exemplo profissional (Herez): em um incidente de falta de espaço, Herez usou df -h para identificar partições quase cheias e priorizar limpeza de logs e arquivos temporários.

    du -sh pasta

    O que faz: mostra o tamanho total de um diretório especificado de forma resumida e legível (-s = summary, -h = human readable).

    $ du -sh /var/log
    Exemplo profissional (Herez): para localizar diretórios que consumiam espaço, Herez executou du -sh em subpastas de /var e identificou logs antigos que foram compactados e arquivados.

    uname -a

    O que faz: exibe informações detalhadas do kernel e do sistema operacional.

    $ uname -a
    Exemplo profissional (Herez): antes de compilar um módulo de kernel para otimização, Herez usou uname -a para confirmar versão do kernel e arquitetura da máquina.

    ps

    O que faz: lista processos em execução no shell atual.

    $ ps
    Exemplo profissional (Herez): em scripts de verificação, Herez usou ps para checar se um processo de manutenção havia sido iniciado corretamente antes de prosseguir com etapas dependentes.

    ps aux

    O que faz: lista todos os processos do sistema com detalhes (usuário, CPU, memória, comando).

    $ ps aux
    Exemplo profissional (Herez): para identificar processos que consumiam CPU excessiva, Herez rodou ps aux --sort=-%cpu e isolou o PID do serviço a ser otimizado.

    top

    O que faz: monitor em tempo real dos processos, uso de CPU, memória e carga do sistema.

    $ top
    Exemplo profissional (Herez): durante um pico de uso, Herez abriu top para observar comportamento em tempo real e identificar processos que precisavam ser reiniciados ou limitados via cgroups.

    kill PID

    O que faz: envia sinal SIGTERM ao processo identificado por PID, solicitando encerramento gracioso.

    $ kill 12345
    Exemplo profissional (Herez): ao encerrar um worker que não respondia a requisições, Herez primeiro tentou kill PID para permitir limpeza de recursos antes de forçar encerramento.

    kill -9 PID

    O que faz: envia sinal SIGKILL ao processo, forçando encerramento imediato sem chance de limpeza.

    $ kill -9 12345
    Exemplo profissional (Herez): quando um processo travado não respondia a SIGTERM e comprometia a estabilidade do serviço, Herez usou kill -9 como último recurso, documentando o evento e acionando reinício controlado.

    Boas práticas e recomendações

    • Documente ações críticas: sempre registre PID, horário e motivo ao encerrar processos em produção.
    • Prefira encerramento gracioso: tente kill PID antes de kill -9 para evitar corrupção de dados.
    • Monitore continuamente: combine top e ps aux com ferramentas de monitoramento para alertas proativos.
    • Automatize verificações: scripts que usam uptime, free -h e df -h ajudam a detectar degradação antes de incidentes.
    Observação: estes comandos são poderosos; execute-os com cuidado em ambientes de produção e, quando possível, em janelas de manutenção ou ambientes de teste.

    Post criado por Herez para documentação interna e compartilhamento de boas práticas em administração de servidores. Para referência e mais conteúdos técnicos, procure por herez.com.br.

    Última atualização: 16 de abril de 2026

  • Repositórios para aprender AI, Machine Learning, Deep Learning, NLP e Reinforcement Learning

    Repositórios para aprender AI/ML — Herez

    Repositórios para aprender AI/ML

    Autor: Herez

    Este post reúne descrições práticas de repositórios que eu, Herez, utilizei para estudar inteligência artificial e aprendizado de máquina. Para cada repositório há uma explicação objetiva e um exemplo real de como o utilizei para aprender, experimentar ou aplicar conceitos.


    microsoft/ML-For-Beginners

    O que é: Coleção estruturada de lições e notebooks para iniciantes em machine learning, cobrindo conceitos fundamentais com exercícios práticos.

    Como eu usei: Segui os notebooks de regressão e classificação para revisar conceitos básicos; adaptei um notebook de classificação para um dataset próprio e comparei resultados com diferentes pré-processamentos.

    Avik-Jain/100-Days-Of-ML-Code

    O que é: Plano de estudos com 100 exercícios e projetos curtos para praticar ML diariamente.

    Como eu usei: Adotei a rotina de 30 dias focada em feature engineering e deploy simples; documentei cada experimento em um repositório pessoal para acompanhar evolução.

    TheAlgorithms/Python

    O que é: Implementações em Python de algoritmos clássicos (estruturas de dados, algoritmos de busca, otimização), úteis para entender fundamentos computacionais.

    Como eu usei: Estudei implementações de algoritmos de otimização e reescrevi versões simplificadas para entender como gradientes e buscas locais funcionam em problemas de ML.

    mml-book/mml-book.github.io

    O que é: Material didático sobre machine learning moderno, com explicações teóricas e exemplos práticos.

    Como eu usei: Consultei capítulos sobre regularização e generalização para ajustar hiperparâmetros em modelos de redes neurais que eu treinava em pequenos datasets.

    GokuMohandas/Made-With-ML

    O que é: Coleção de projetos e tutoriais práticos que mostram aplicações reais de ML, desde protótipos até deploy.

    Como eu usei: Inspirei-me em um projeto de classificação de texto para montar um pipeline de pré-processamento e deploy em container para um protótipo pessoal.

    labmlai/annotated_deep_learning_papers

    O que é: Resumos e anotações de artigos importantes de deep learning, com explicações acessíveis e implementações de referência.

    Como eu usei: Li a anotação de um paper sobre atenção e implementei uma versão reduzida para testar impacto em uma tarefa de classificação de sequência.

    karpathy/nn-zero-to-hero

    O que é: Material didático que explica redes neurais do zero, com implementações simples para aprendizado conceitual.

    Como eu usei: Reproduzi os exercícios de backpropagation em NumPy para fixar a matemática por trás do treinamento de redes.

    HandsOnLLM/Hands-On-Large-Language-Models

    O que é: Recursos práticos para trabalhar com grandes modelos de linguagem (LLMs), incluindo exemplos de prompt engineering e pipelines de inferência.

    Como eu usei: Testei exemplos de fine-tuning leve e pipelines de inferência para entender trade-offs entre latência e qualidade em LLMs menores.

    dair-ai/Prompt-Engineering-Guide

    O que é: Guia com técnicas e padrões para criar prompts eficazes ao trabalhar com modelos de linguagem.

    Como eu usei: Apliquei padrões de prompt para melhorar respostas em tarefas de extração de informação e comparei variações para medir robustez.

    microsoft/ai-agents-for-beginners

    O que é: Recursos introdutórios sobre agentes de IA, cobrindo conceitos de arquitetura, planejamento e integração com modelos.

    Como eu usei: Experimentei um exemplo de agente simples para automatizar uma tarefa de coleta de dados e aprimorei a lógica de decisão com regras básicas.

    NirDiamant/GenAI_Agents

    O que é: Repositório com exemplos e padrões para construir agentes baseados em modelos generativos.

    Como eu usei: Combinei um padrão de agente com um fluxo de prompts para criar um assistente que gera resumos técnicos a partir de textos longos.

    NirDiamant/RAG_Techniques

    O que é: Técnicas e exemplos de Retrieval-Augmented Generation (RAG) para integrar recuperação de documentos com geração de texto.

    Como eu usei: Modelei um pipeline RAG para responder perguntas sobre um conjunto de documentos internos, avaliando precisão e latência.

    academic/awesome-datascience

    O que é: Curadoria de recursos, cursos e ferramentas para ciência de dados e aprendizado de máquina.

    Como eu usei: Usei a curadoria para montar um plano de estudos personalizado, priorizando tópicos de estatística aplicada e visualização de dados.

    keon/awesome-nlp

    O que é: Lista de recursos e bibliotecas para processamento de linguagem natural (NLP).

    Como eu usei: Explorei bibliotecas recomendadas para tokenização e embeddings e comparei resultados em tarefas de classificação de sentimento.

    aikorea/awesome-rl

    O que é: Coleção de recursos sobre reinforcement learning (RL), incluindo tutoriais, implementações e papers.

    Como eu usei: Segui um tutorial de RL para treinar um agente simples em um ambiente simulado e analisei curvas de recompensa para ajustar hiperparâmetros.

    FareedKhan-dev/all-rl-algorithms

    O que é: Implementações de diversos algoritmos de RL para estudo e comparação.

    Como eu usei: Comparei implementações de DQN e PPO em um problema reduzido para entender diferenças de estabilidade e convergência.

    Como eu recomendo usar esses repositórios

    • Monte um plano de estudos prático: combine um repositório teórico (papers/anotações) com um repositório de projetos práticos.
    • Reproduza experimentos mínimos: implemente versões reduzidas dos exemplos antes de tentar reproduzir o pipeline completo.
    • Documente tudo: mantenha um diário de experimentos com comandos, parâmetros e resultados para acelerar aprendizado.
    • Integre aprendizado com projetos reais: aplique conceitos em pequenos projetos que resolvam problemas concretos.
    Tags:
    AI, Machine Learning, Deep Learning, NLP, Reinforcement Learning, Herez, Tutoriais, Repositórios

    Este post foi redigido por Herez e apresenta experiências e exemplos práticos utilizados por ele para aprender e aplicar técnicas de IA/ML.

  • Comandos do Linux para Rede

    Guia prático de comandos de rede Linux — Herez

    Guia prático de comandos de rede Linux

    Autor: Herez

    Este post reúne explicações objetivas de comandos essenciais para diagnóstico e administração de redes em sistemas Linux, acompanhadas de exemplos reais usados por Herez em ambientes de produção e laboratório. O objetivo é fornecer um material direto ao ponto, útil para administradores, desenvolvedores e estudantes.

    Sumário rápido

    • Comandos para ver interfaces e endereços
    • Ferramentas de conectividade e roteamento
    • Inspeção de sockets e portas
    • Diagnóstico DNS e Wi‑Fi
    • Captura e monitoramento de tráfego

    ip a — listar interfaces e endereços IP

    Exibe as interfaces de rede e os endereços IP atribuídos (IPv4/IPv6). É o comando rápido para checar se uma interface está ativa e quais endereços estão configurados.

    # Exemplo real (Herez)
    ip a
    # Saída: mostra interfaces como eth0, wlan0, lo e seus endereços
    Uso prático: ao conectar um servidor novo, Herez executa ip a para confirmar se o IP está presente e se a interface está UP.

    ip addr show — informações detalhadas das interfaces

    Versão mais explícita de ip a, útil quando se quer ver detalhes como escopos, etiquetas e endereços secundários.

    # Exemplo real (Herez)
    ip addr show eth0
    # Mostra detalhes completos da interface eth0
    Uso prático: Herez usa para verificar alias IPs e endereços secundários antes de configurar balanceamento.

    ip route show — tabela de roteamento

    Mostra a tabela de roteamento do kernel: rotas padrão, rotas específicas e interfaces associadas.

    # Exemplo real (Herez)
    ip route show
    # Saída: default via 192.168.1.1 dev eth0; 10.0.0.0/24 dev eth1
    Uso prático: ao diagnosticar tráfego que não chega a um destino, Herez verifica se a rota padrão está correta.

    ip link show — listar interfaces e status

    Lista interfaces de rede com seu estado (UP/DOWN), MTU e flags. Útil para checar se a interface foi ativada pelo sistema.

    # Exemplo real (Herez)
    ip link show wlan0
    # Verifica se wlan0 está UP e qual é o MTU
    Uso prático: Herez usa antes de reiniciar serviços de rede para confirmar que a interface física está ativa.

    ping [host] — testar conectividade

    Envia ICMP echo requests para verificar latência e perda de pacotes até um host. Ferramenta básica para checar se um destino está alcançável.

    # Exemplo real (Herez)
    ping -c 5 8.8.8.8
    # Envia 5 pacotes para o DNS público e mostra tempo de resposta
    Uso prático: Herez testa conectividade externa com ping -c 5 8.8.8.8 antes de abrir chamados com o provedor.

    traceroute [destino] — caminho dos pacotes

    Mostra cada salto entre sua máquina e o destino, ajudando a identificar onde ocorrem latência ou perda.

    # Exemplo real (Herez)
    traceroute example.com
    # Exibe a rota e tempos por salto até example.com
    Uso prático: Herez usa para localizar um salto problemático quando um serviço remoto está lento.

    mtr [destino] — análise contínua de latência e perda

    Combina as funcionalidades de ping e traceroute em tempo real, mostrando estatísticas por salto.

    # Exemplo real (Herez)
    mtr -rw example.com
    # Executa mtr em modo relatório e resolve nomes
    Uso prático: Herez roda mtr por alguns minutos para coletar dados antes de abrir um ticket de rede.

    ss -tuln — conexões e portas abertas

    Lista sockets TCP/UDP em escuta sem resolver nomes, útil para ver quais portas estão abertas no sistema.

    # Exemplo real (Herez)
    ss -tuln
    # Mostra serviços escutando: 0.0.0.0:80, 127.0.0.1:5432, etc.
    Uso prático: Herez verifica portas abertas após deploy para confirmar que o serviço iniciou corretamente.

    ss -tulnp — conexões, portas e processos

    Semelhante ao anterior, mas inclui o PID/Programa associado a cada socket (quando permitido).

    # Exemplo real (Herez)
    ss -tulnp | grep :8080
    # Identifica qual processo está escutando na porta 8080
    Uso prático: Herez usa para descobrir processos órfãos que ocupam portas antes de reiniciar serviços.

    ip neigh — vizinhança ARP/ND

    Mostra a tabela ARP (IPv4) ou Neighbor Discovery (IPv6), útil para mapear endereços MAC associados a IPs na rede local.

    # Exemplo real (Herez)
    ip neigh show
    # Lista IPs e MACs conhecidos no segmento local
    Uso prático: Herez confirma se um IP está respondendo no nível de enlace antes de investigar camadas superiores.

    hostname — nome da máquina

    Exibe (ou define) o nome do host local. Útil para identificar rapidamente qual servidor você está acessando.

    # Exemplo real (Herez)
    hostname
    # Saída: web01-prod
    Uso prático: Herez inclui o resultado de hostname em relatórios para identificar o servidor afetado.

    hostname -I — IPs da máquina

    Mostra os endereços IP atribuídos ao host em uma linha, prático para scripts e verificações rápidas.

    # Exemplo real (Herez)
    hostname -I
    # Saída: 192.168.1.45 10.0.0.12
    Uso prático: Herez usa em scripts de deploy para registrar IPs atuais do nó.

    dig [domínio] — consulta DNS

    Ferramenta poderosa para consultar registros DNS (A, AAAA, MX, TXT, etc.) e diagnosticar problemas de resolução.

    # Exemplo real (Herez)
    dig +short example.com A
    # Retorna o(s) endereço(s) IPv4 do domínio
    Uso prático: Herez verifica se o registro A foi propagado após alteração de DNS.

    resolvectl query [domínio] — consulta DNS via systemd-resolved

    Usado em sistemas com systemd-resolved para consultar e inspecionar resolução de nomes e servidores configurados.

    # Exemplo real (Herez)
    resolvectl query example.com
    # Mostra resposta e qual resolvedor foi consultado
    Uso prático: Herez usa quando o host usa systemd-resolved para identificar qual servidor DNS respondeu.

    nmcli device status — status das interfaces (NetworkManager)

    Comando do NetworkManager para ver o estado das interfaces gerenciadas por ele (conectado/desconectado).

    # Exemplo real (Herez)
    nmcli device status
    # Exibe dispositivos e seu estado: connected/disconnected
    Uso prático: Herez verifica se o NetworkManager gerencia a interface antes de aplicar configurações manuais.

    iw dev — listar interfaces Wi‑Fi

    Lista interfaces sem fio e suas propriedades; útil em diagnósticos de Wi‑Fi em Linux.

    # Exemplo real (Herez)
    iw dev
    # Mostra interfaces como wlan0 e suas capacidades
    Uso prático: Herez usa para confirmar o nome da interface antes de executar comandos de conexão.

    iw dev [interface] link — status da conexão Wi‑Fi

    Mostra o estado atual da conexão sem fio: SSID, BSSID, taxa de transmissão e sinal.

    # Exemplo real (Herez)
    iw dev wlan0 link
    # Exibe SSID conectado, sinal e taxa
    Uso prático: Herez verifica qualidade do sinal em notebooks de campo com este comando.

    ethtool [interface] — informações da interface Ethernet

    Exibe e configura parâmetros da interface Ethernet: velocidade, duplex, auto‑negociação e estatísticas.

    # Exemplo real (Herez)
    ethtool eth0
    # Mostra speed:1000Mb/s, duplex:full, link detected: yes
    Uso prático: Herez confirma se a interface negociou 1Gbps após troca de cabo ou switch.

    tcpdump -i [interface] — captura de pacotes

    Captura pacotes na interface especificada; essencial para análise profunda de tráfego e investigação de problemas.

    # Exemplo real (Herez)
    sudo tcpdump -i eth0 -n host 10.0.0.5 and port 443 -c 100 -w capture.pcap
    # Captura 100 pacotes HTTPS do host 10.0.0.5 e salva em capture.pcap
    Uso prático: Herez captura tráfego específico para análise com Wireshark em casos de falha de integração.

    Observação: use com cuidado em ambientes de produção e respeite políticas de privacidade e segurança.

    ip monitor — monitorar eventos de rede em tempo real

    Monitora mudanças no estado de interfaces, rotas e vizinhança ARP em tempo real — útil para depuração dinâmica.

    # Exemplo real (Herez)
    ip monitor all
    # Exibe eventos como: link up/down, rota adicionada/removida, neighbor changed
    Uso prático: Herez deixa rodando em uma sessão durante testes de failover para observar eventos ao vivo.

    Boas práticas rápidas

    • Execute comandos de diagnóstico com privilégios adequados (sudo quando necessário) e registre saídas para auditoria.
    • Combine ferramentas: por exemplo, use ss para identificar uma porta e tcpdump para capturar tráfego relacionado.
    • Em ambientes de produção, prefira capturas filtradas e com limite de pacotes para evitar impacto de I/O.
    • Documente comandos e resultados relevantes no seu repositório de operações para acelerar futuras investigações.

    Exemplos de fluxo de diagnóstico (resumido)

    1. Verificar interfaces e IPs: ip a / hostname -I.
    2. Testar conectividade externa: ping -c 5 8.8.8.8.
    3. Rastrear rota: traceroute example.com ou mtr -rw example.com.
    4. Checar serviços locais: ss -tulnp.
    5. Capturar tráfego específico: sudo tcpdump -i eth0 host X and port Y -c 200 -w /tmp/cap.pcap.

    Linux, Comandos de Rede, Diagnóstico de Rede, tcpdump, troubleshooting, Herez, Administração de Sistemas, Network

    Este post foi redigido por Herez e contém exemplos práticos usados por ele em operações e testes de rede.

Biografia do autor: Doutor Herez possui Bacharelado em Análise de Sistemas, Mestrado em Engenharia de Computação/Software, Doutorado em Ciência da Computação e seu primeiro diploma acadêmico em Processamento de Dados em 1996. Início profissional na carreira em T.I. em 1993 com o primeiro certificado de programação de computadores em 1986 e início da participação em curso de programação em 1985. Microsoft Certified Professional desde 2000, entre outros títulos oficiais de diversos grandes fabricantes internacionais de software, também criou cursos e provas oficiais voltados à programação de computadores. Tem experiência na área de Ciência da Computação, com ênfase em Engenharia de Software, atuando principalmente nos seguintes temas: análise e desenvolvimento de sistemas, engenharia de software, métodos de pesquisa e métodos ágeis.