Oficina do Hacker: Mergulhando no Sistema e Trabalhando com Arquivos
Descubra ferramentas essenciais para a gestão de arquivos, depuração de programas e análise de logs. Explore utilitários como gdu e snapdiff para otimizar suas tarefas de segurança e administração de sistemas.
MundiX News·02 de maio de 2026·10 min de leitura·👁 5 views
Faz tempo que não escrevo uma seleção de utilitários! Nesta edição da "oficina" - ferramentas para organizar arquivos, depurar programas não responsivos e trabalhar com logs. Prepare o terminal e sente-se confortavelmente!
Seleções anteriores de utilitários de linha de comando
A magia do console. Selecionando utilitários úteis para trabalhar no terminal
A magia do console 2. Abastecendo-se de ferramentas para todas as ocasiões
Oficina do Hacker. Seleção de ferramentas úteis para Windows e Linux
Oficina do Hacker. 13 utilitários para Linux que serão úteis para o administrador
Oficina do Hacker. Coletamos utilitários que facilitarão a vida e o trabalho
Oficina do Hacker. Assistentes de IA, trabalhando com JSON e pequenas coisas agradáveis que serão úteis no trabalho
Oficina do Hacker. Teste de estresse de sites, benchmark para equipes, trabalhando com texto e outras coisas úteis
gdu
Gdu (Go DiskUsage) é uma ferramenta poderosa para organizar arquivos no sistema de arquivos. Ele verifica rapidamente o diretório especificado recursivamente e constrói uma interface TUI interativa conveniente, onde você pode navegar pela árvore de pastas e excluir as desnecessárias.
WinDirStat
O análogo mais próximo do gdu para Windows é o programa WinDirStat.
gdu é instalado simplesmente baixando o binário do GitHub:
Executar gdu sem argumentos fará com que o programa analise o diretório atual.
A verificação pode levar algum tempo. E não parecerá uma congelamento
A verificação de ~200 GB de dados leva um pouco menos de quatro segundos - a velocidade está no nível!
Após a verificação, uma árvore interativa do sistema de arquivos é aberta, onde você pode ver quanto cada coisa ocupa no total.
Árvore FS
Uma alternativa é iniciar diretamente via Docker:
A ajuda integrada é muito informativa e não precisa de comentários especiais, mas ainda assim vou destacar algumas teclas de atalho importantes:
r - verifica novamente a pasta atual;
b - abre o terminal na pasta atual (exit então retornará ao gdu);
d - exclui o elemento selecionado, e com a barra de espaço você pode selecionar vários para excluir em uma lista.
gdu suporta o modo não interativo e pode gerar resultados em JSON para uso em algum pipeline externo (por exemplo, exibir os maiores arquivos em uma notificação de disco cheio). Aqui está, por exemplo, salvando um relatório em JSON compactado da documentação do projeto:
bash
gdu -o- / |gzip -c > report.json.gz
Para ler o relatório:
bash
zcat report.json.gz | gdu -f-
snapdiff
Para comparar arquivos de texto, é conveniente usar diff. Mas e se você precisar comparar o conteúdo não de dois arquivos, mas de dois backups de dezenas de milhares de arquivos cada? Acontece que existe um utilitário para isso também, e ele é chamado snapdiff.
O principal cenário de uso é comparar snapshots regulares do sistema de arquivos. Por padrão, o programa exibe apenas estatísticas gerais (quantos dados no total, quantos comuns, quantos foram adicionados, excluídos ou alterados), mas há uma chave --report, que mostrará todos os arquivos não idênticos.
Snapdiff é escrito em Rust, e você precisará de um compilador da versão 1.70 ou superior para instalá-lo. Você pode instalá-lo usando uma linha:
Em seguida, clone o repositório com o código e compile o binário:
bash
git clone https://github.com/jotaen/snapdiff.git
cargo build --release
# O binário estará em target/release/snapdiff
Agora você pode começar! Para comparar /mnt/backup/snap1 e /mnt/backup/snap2, use snapdiff /mnt/backup/snap1 /mnt/backup/snap2.
snapdiff
A chave --report report.txt permite obter uma lista detalhada de arquivos não idênticos. Use-o se estiver fazendo um pipeline automático para backups incrementais ou algo assim.
progress
Ao copiar arquivos grandes (por exemplo, backups), pode parecer que o processo de cópia travou, e 10% do progresso visualmente não difere de 95%. Corrigir esse mal-entendido irritante alterando os próprios utilitários de cópia/movimentação seria errado: afinal, muitos scripts de terceiros estão vinculados a eles e uma mudança repentina no comportamento certamente não os beneficiará.
A solução de compromisso foi encontrada há mais de dez anos no utilitário cv, agora mais conhecido como progress. Ele pode mostrar o progresso da execução para um grande número de comandos do pacote coreutils, que inclui não apenas cp e mv, mas também tar, gzip, cat, dd e outros. Não é necessário alterar as flags ao chamar esses comandos - progress pode mostrar o status na configuração padrão.
O restante do artigo está disponível apenas para membros
Os materiais das últimas edições ficam disponíveis separadamente apenas dois meses após a publicação. Para continuar lendo, você precisa se tornar um membro da comunidade "Xakep.ru".
Junte-se à comunidade "Xakep.ru"!
A associação à comunidade durante o período especificado lhe dará acesso a TODOS os materiais do "Hacker", permitirá que você baixe edições em PDF, desative a publicidade no site e aumente seu desconto acumulativo pessoal!
Mais detalhes
Eu já sou membro de "Xakep.ru"
← Anterior
Roskomnadzor disse que não restringe as VPNs corporativas
🛡️⚡
Pare de pesquisar. Comece a hackear.
O MundiX é seu copiloto de pentest com IA: comandos exatos, análise de outputs e próximo passo na kill chain — em segundos.
Faz tempo que não escrevo uma seleção de utilitários! Nesta edição da "oficina" - ferramentas para organizar arquivos, depurar programas não responsivos e trabalhar com logs. Prepare o terminal e sente-se confortavelmente!
Seleções anteriores de utilitários de linha de comando
A magia do console. Selecionando utilitários úteis para trabalhar no terminal
A magia do console 2. Abastecendo-se de ferramentas para todas as ocasiões
Oficina do Hacker. Seleção de ferramentas úteis para Windows e Linux
Oficina do Hacker. 13 utilitários para Linux que serão úteis para o administrador
Oficina do Hacker. Coletamos utilitários que facilitarão a vida e o trabalho
Oficina do Hacker. Assistentes de IA, trabalhando com JSON e pequenas coisas agradáveis que serão úteis no trabalho
Oficina do Hacker. Teste de estresse de sites, benchmark para equipes, trabalhando com texto e outras coisas úteis
gdu
Gdu (Go DiskUsage) é uma ferramenta poderosa para organizar arquivos no sistema de arquivos. Ele verifica rapidamente o diretório especificado recursivamente e constrói uma interface TUI interativa conveniente, onde você pode navegar pela árvore de pastas e excluir as desnecessárias.
WinDirStat
O análogo mais próximo do gdu para Windows é o programa WinDirStat.
gdu é instalado simplesmente baixando o binário do GitHub:
Executar gdu sem argumentos fará com que o programa analise o diretório atual.
A verificação pode levar algum tempo. E não parecerá uma congelamento
A verificação de ~200 GB de dados leva um pouco menos de quatro segundos - a velocidade está no nível!
Após a verificação, uma árvore interativa do sistema de arquivos é aberta, onde você pode ver quanto cada coisa ocupa no total.
Árvore FS
Uma alternativa é iniciar diretamente via Docker:
A ajuda integrada é muito informativa e não precisa de comentários especiais, mas ainda assim vou destacar algumas teclas de atalho importantes:
r - verifica novamente a pasta atual;
b - abre o terminal na pasta atual (exit então retornará ao gdu);
d - exclui o elemento selecionado, e com a barra de espaço você pode selecionar vários para excluir em uma lista.
gdu suporta o modo não interativo e pode gerar resultados em JSON para uso em algum pipeline externo (por exemplo, exibir os maiores arquivos em uma notificação de disco cheio). Aqui está, por exemplo, salvando um relatório em JSON compactado da documentação do projeto:
gdu -o- / | gzip -c > report.json.gz
Para ler o relatório:
zcat report.json.gz | gdu -f-
snapdiff
Para comparar arquivos de texto, é conveniente usar diff. Mas e se você precisar comparar o conteúdo não de dois arquivos, mas de dois backups de dezenas de milhares de arquivos cada? Acontece que existe um utilitário para isso também, e ele é chamado snapdiff.
O principal cenário de uso é comparar snapshots regulares do sistema de arquivos. Por padrão, o programa exibe apenas estatísticas gerais (quantos dados no total, quantos comuns, quantos foram adicionados, excluídos ou alterados), mas há uma chave --report, que mostrará todos os arquivos não idênticos.
Snapdiff é escrito em Rust, e você precisará de um compilador da versão 1.70 ou superior para instalá-lo. Você pode instalá-lo usando uma linha:
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
Em seguida, clone o repositório com o código e compile o binário:
git clone https://github.com/jotaen/snapdiff.git
cargo build --release
# O binário estará em target/release/snapdiff
Agora você pode começar! Para comparar /mnt/backup/snap1 e /mnt/backup/snap2, use snapdiff /mnt/backup/snap1 /mnt/backup/snap2.
snapdiff
A chave --report report.txt permite obter uma lista detalhada de arquivos não idênticos. Use-o se estiver fazendo um pipeline automático para backups incrementais ou algo assim.
progress
Ao copiar arquivos grandes (por exemplo, backups), pode parecer que o processo de cópia travou, e 10% do progresso visualmente não difere de 95%. Corrigir esse mal-entendido irritante alterando os próprios utilitários de cópia/movimentação seria errado: afinal, muitos scripts de terceiros estão vinculados a eles e uma mudança repentina no comportamento certamente não os beneficiará.
A solução de compromisso foi encontrada há mais de dez anos no utilitário cv, agora mais conhecido como progress. Ele pode mostrar o progresso da execução para um grande número de comandos do pacote coreutils, que inclui não apenas cp e mv, mas também tar, gzip, cat, dd e outros. Não é necessário alterar as flags ao chamar esses comandos - progress pode mostrar o status na configuração padrão.
O restante do artigo está disponível apenas para membros
Os materiais das últimas edições ficam disponíveis separadamente apenas dois meses após a publicação. Para continuar lendo, você precisa se tornar um membro da comunidade "Xakep.ru".
Junte-se à comunidade "Xakep.ru"!
A associação à comunidade durante o período especificado lhe dará acesso a TODOS os materiais do "Hacker", permitirá que você baixe edições em PDF, desative a publicidade no site e aumente seu desconto acumulativo pessoal!
Mais detalhes
Eu já sou membro de "Xakep.ru"
← Anterior
Roskomnadzor disse que não restringe as VPNs corporativas
📤 Compartilhar & Baixar
🧰 Ferramentas recomendadas
Divulgação: alguns links são patrocinados. Podemos receber comissão se você comprar — sem custo extra para você. Só indicamos o que faz sentido para a comunidade.