De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.

Guia Prático do Zstd no Linux

Colaboração: Rubens Queiroz de Almeida

Data de Publicação: 15 de junho de 2026

O Zstandard (mais conhecido pelas suas extensões de arquivo .zst ou .zstd) é hoje uma das tecnologias de compactação mais importantes e revolucionárias do ecossistema Linux e da engenharia de software moderna.

O Zstandard foi criado por Yann Collet (que também desenvolveu o famoso LZ4) e lançado oficialmente pelo Facebook (Meta) em 2016 como um projeto de código aberto.

Antes do Zstandard, os administradores de sistemas Linux enfrentavam um dilema cruel ao escolher um algoritmo de compactação:

  1. Escolher o GZIP (.gz): Era extremamente rápido, mas a taxa de compactação era fraca (os arquivos continuavam grandes).
  2. Escolher o XZ (.xz) ou BZIP2 (.bz2): Conseguia arquivos incrivelmente pequenos, mas o processo era dolorosamente lento e consumia muita memória e processamento (CPU).

Não havia um meio-termo. À medida que o volume de dados do mundo explodiu (Big Data, logs de servidores gigantescos, backups de bancos de dados em tempo real), a indústria precisava de algo que fosse tão rápido quanto o Gzip, mas que compactasse tanto quanto o XZ.

Foi exatamente para quebrar essa barreira que o Zstandard foi projetado.

O segredo do Zstd é a flexibilidade matemática. Ele utiliza um algoritmo chamado Finite State Entropy (FSE). Ele oferece 19 níveis padrão de compressão (e até 22 níveis se você ativar o modo ultra):

  • No Nível 1, ele prioriza velocidade máxima (chega a ser mais rápido que o Gzip).
  • No Nível 19, ele esmaga o arquivo para o tamanho do XZ.
  • Ele escala perfeitamente com múltiplos núcleos da sua CPU (Multi-threading nativo), algo que o Gzip clássico não consegue fazer.

Hoje, distros como Arch Linux e Fedora usam .zst para compactar todos os pacotes do sistema por causa de sua velocidade absurda de descompactação.

Para começar, garanta que a ferramenta está instalada no seu sistema:

# Ubuntu / Debian / Mint
sudo apt install zstd -y

# Fedora / RHEL
sudo dnf install zstd -y

# Arch Linux
sudo pacman -S zstd

1. Compactando e Descompactando Arquivos Únicos

Diferente do Gzip, o zstd é muito inteligente com a sintaxe. Para compactar um arquivo mantendo o nível padrão (Nível 3):

$ zstd meu_arquivo.txt

Isso vai gerar o arquivo meu_arquivo.txt.zst e manter o arquivo original.

Para descompactar (extrair) o arquivo:

$ zstd -d meu_arquivo.txt.zst

(Você também pode usar o comando atalho unzstd meu_arquivo.txt.zst)

2. Compactando Pastas Inteiras (O Jeito Tradicional Linux)

O comando zstd sozinho compacta apenas arquivos individuais. Para compactar uma pasta inteira, nós o combinamos com o tar (que junta a pasta em um arquivo só antes do Zstd agir).

Para compactar uma pasta:

$ tar --zstd -cf minha_pasta.tar.zst /caminho/da/pasta

Para descompactar a pasta:

$ tar --zstd -xf minha_pasta.tar.zst

3. Exemplos Avançados de Uso (O Poder do Zstd)

Velocidade Máxima de Backup (Nível Baixo)

Se você tem um arquivo de log imenso de 50GB e precisa compactá-lo o mais rápido possível para liberar espaço em disco imediatamente, use o nível 1:

$ zstd -1 super_log.log

Compressão Máxima para Armazenamento (Nível Alto)

Se você vai guardar um backup antigo que raramente será acessado e quer que ele ocupe o menor espaço possível no HD, use o nível 19 (atenção: vai usar mais CPU):

$ zstd -19 backup_antigo.tar

Usando Múltiplos Núcleos do Processador (O Super Trunfo)

Por padrão, o zstd usa apenas 1 núcleo da CPU. Se você tem um processador moderno com 4, 8 ou 16 núcleos, você pode dizer para ele usar todos os núcleos disponíveis para estraçalhar o tempo de espera usando o argumento -T0 (T de threads, e 0 significa "use tudo o que tiver"):

$ tar --zstd -cf backup_ultra_rapido.tar.zst --file-selection -T0 /minha_pasta_gigante

(O comando acima vai usar 100% da sua CPU multithread para terminar o trabalho em uma fração de segundos).

Compactar e apagar o original automaticamente

Se você quer que ele se comporte igual ao Gzip (apagando o arquivo original após gerar o .zst), adicione a flag --rm:

$ zstd --rm documento.pdf


Veja a relação completa dos artigos de Rubens Queiroz de Almeida