Comando tar: como compactar e extrair arquivos na VPS
Aprenda o comando tar na VPS: o que são .tar e .tar.gz, as opções -c, -x, -t, -v, -f e -z, como criar, listar e extrair pacotes e deixar arquivos de fora.
Por Redação Eleven Host · @robson.direitodigital · 30 de outubro de 2026 · 7 min de leitura

Capa da Redação Eleven Host para o guia: Comando tar: como compactar e extrair arquivos na VPS Arte: Eleven Host
O comando tar junta arquivos e pastas em um só arquivo, que pode ser comprimido com o gzip, e também extrai o conteúdo desse arquivo de volta. Este guia mostra as opções principais, como criar, listar e extrair um pacote e como deixar arquivos de fora.
O que é um .tar e um .tar.gz
Quem administra uma VPS pode querer guardar uma pasta inteira em um único arquivo. É isso que o tar faz. Um arquivo .tar é o pacote que reúne vários arquivos e pastas num só. Um .tar.gz é esse mesmo pacote passado pelo gzip, que o comprime.
Neste guia, o arquivo que o tar cria é chamado de pacote. Para criar o pacote, as pastas entram de forma recursiva: o tar leva o que está dentro delas, a menos que você use a opção --no-recursion.
As opções principais do tar
Segundo a página de manual, é preciso dar uma operação ao tar. As três que este guia usa são estas:
-c(ou--create): cria um pacote novo.-x(ou--extract): extrai arquivos de um pacote.-t(ou--list): lista o conteúdo de um pacote.
Junto com a operação, entram opções de apoio:
-v(ou--verbose): mostra os arquivos processados. Repetir a opção aumenta o detalhe, até três vezes.-f(ou--file): indica o arquivo que será usado como pacote.-z(ou--gzip): passa o pacote pelo gzip.
Existem também a opção -j (--bzip2), que usa o bzip2, e a -J (--xz), que usa o xz. A -a (--auto-compress) usa a extensão do nome do pacote para escolher o programa de compressão. Neste guia, o foco é o gzip.
Deixe o f por último no grupo de letras, como em -czvf. O nome que vem logo depois dele é o do pacote.
A página de manual mostra que estes quatro comandos fazem a mesma coisa, guardar o conteúdo de /etc no pacote etc.tar:
tar cfv etc.tar /etc
tar -cvf etc.tar /etc
tar -c -v -f etc.tar /etc
tar --create --file etc.tar --verbose /etc
No estilo curto, as letras podem ser agrupadas. Uma opção que recebe um argumento pode ficar no fim do grupo, e o argumento vem logo depois dela. Por exemplo, em -czvf site.tar.gz, o site.tar.gz é o argumento do f, e o f fica no fim das letras para o nome vir logo depois.
Os exemplos deste guia usam o estilo agrupado, como em -czvf. O resultado é o mesmo dos quatro comandos acima: um pacote, com o nome que você escolher no -f.
Criar um .tar.gz de uma pasta
Para guardar uma pasta num pacote comprimido, junte -c, -z, -v e -f, dê o nome do pacote e depois o caminho da pasta:
tar -czvf site.tar.gz /var/www/meu-site
Lendo o comando: -c cria, -z passa pelo gzip, -v mostra cada arquivo na tela e -f site.tar.gz define o nome do pacote. O último argumento, /var/www/meu-site, é a pasta que entra nele. Troque o nome do pacote e o caminho pelos da sua VPS.
Neste comando, a extensão .tar.gz é o nome que você dá ao pacote; o que o comprime é o -z. Cada letra do grupo -czvf é uma opção do tar: criar, passar pelo gzip, mostrar os arquivos e dar o nome do pacote.
Se o espaço da VPS estiver apertado, o guia Disco cheio na VPS: como liberar espaço no Ubuntu cobre o passo a passo para liberar espaço.
Ver o que tem dentro do pacote
Antes de extrair, confira o conteúdo com -t. Como o pacote é um .tar.gz, mantenha o -z:
tar -tzvf site.tar.gz
O comando lista os arquivos do pacote sem extrair nada. Com a lista na tela, você confere se a pasta certa entrou e se os arquivos esperados estão lá. A opção -v mostra os arquivos processados; repetida, aumenta o detalhe.
Quer conhecer a VPS da Eleven Host? O Plano Bronze da VPS sai a partir de R$ 17,00/mês; confira na loja o que cada plano inclui. Ver planos de VPS
Extrair o pacote
Para extrair, troque a operação -c por -x. O -z continua no comando, porque o pacote é um .tar.gz:
tar -xzvf site.tar.gz
Com o -v, o tar mostra os arquivos processados. Para escolher a pasta de destino, use a opção -C, explicada a seguir.
Extrair em outra pasta com -C
A opção -C (ou --directory) muda para a pasta indicada antes da operação. Ela depende da posição: afeta o que vem depois dela, mas não os argumentos de opções como o -f. Para extrair numa pasta de destino:
tar -xzvf site.tar.gz -C /tmp/restauracao
A pasta de destino precisa existir antes do comando.
Permissões e caminhos
Duas opções ajudam na extração. A -p (--preserve-permissions) aplica as permissões gravadas no pacote, e esse é o padrão quando quem extrai é o superusuário. A --strip-components=N tira N partes do começo dos caminhos ao extrair.
Deixar arquivos de fora com --exclude
Para que alguns arquivos não entrem no pacote, use --exclude=PADRÃO. Segundo a página de manual, ele exclui os arquivos que batem com o padrão, no estilo curinga do glob. Este exemplo deixa de fora os arquivos terminados em .log:
tar -czvf site.tar.gz --exclude='*.log' /var/www/meu-site
No exemplo, o padrão vai entre aspas simples. A opção -X (ou --exclude-from=ARQUIVO) exclui os padrões listados em um arquivo. A --exclude-vcs deixa de fora as pastas de controle de versão.
Depois de criar o pacote, confira o resultado com tar -tzvf: se algum arquivo que devia ficar de fora aparecer na lista, ajuste o padrão e crie o pacote de novo.
Exemplo prático: guardar o site antes de uma mudança
Antes de mexer no site, você pode guardar uma cópia da pasta dele. A sequência é esta, na ordem:
- Crie o pacote com a pasta do site.
- Confira o conteúdo com
-t. - Leve o pacote para outro lugar, se quiser uma cópia fora da VPS.
tar -czvf site.tar.gz /var/www/meu-site
tar -tzvf site.tar.gz
Para copiar arquivos pelo terminal, o guia scp: como copiar arquivos para a VPS pelo terminal trata do comando scp. Se preferir sincronizar pastas, veja o rsync: como sincronizar arquivos com a VPS. Para usar o pacote guardado depois, a extração é feita com tar -xzvf.
Comandos para guardar
tar -czvf site.tar.gz /var/www/meu-site: cria um .tar.gz da pasta.tar -tzvf site.tar.gz: lista o conteúdo do pacote.tar -xzvf site.tar.gz: extrai o pacote.tar -xzvf site.tar.gz -C /tmp/restauracao: extrai em outra pasta, que precisa existir.tar -czvf site.tar.gz --exclude='*.log' /var/www/meu-site: deixa de fora os arquivos .log.
Quer ver os planos de VPS da Eleven Host? O Plano Bronze da VPS sai a partir de R$ 17,00/mês; confira na loja o que cada plano inclui. Conhecer os planos
Perguntas frequentes
Para que serve o comando tar?
Ele junta arquivos e pastas em um só pacote, que pode ser comprimido com o gzip, e extrai o conteúdo de um pacote.
Qual a diferença entre .tar e .tar.gz?
O .tar reúne vários arquivos e pastas num só. O .tar.gz é esse pacote passado pelo gzip.
Como criar um .tar.gz de uma pasta?
Use tar -czvf pacote.tar.gz pasta, com o nome do pacote logo depois do f.
Como ver o conteúdo sem extrair?
Use tar -tzvf pacote.tar.gz. A operação -t lista o que há no pacote.
Como extrair em outra pasta?
Use a opção -C com a pasta de destino, como em tar -xzvf pacote.tar.gz -C /tmp/restauracao. A pasta precisa existir.