Cookies para estatística e publicidade
Usamos cookies de estatística e de publicidade, ambos enviados ao Google. Recusar não muda nada do que você vê.Ler a página de privacidade
Aqui você converte 7Z para GZ de graça e sem conta: solte o arquivo acima e em poucos segundos o resultado está pronto para baixar. O arquivo viaja criptografado até o nosso servidor, é convertido lá e é apagado assim que o trabalho termina.
Até 100 arquivos de uma vez. Formatos misturados não são problema.
Eles são convertidos um após o outro e baixados juntos em um ZIP.
7Z para GZ
Um agente de build baixa o artefato e descompacta com tar, um script de deploy espera algo que dá para encanar direto, e um administrador de servidor não quer instalar 7-Zip só para abrir um arquivo. Nenhum deles vai mudar de ferramenta para receber um 7Z.
O 7Z continua sendo o formato mais eficiente dos dois. Converter não é admitir que ele é pior, é reconhecer que a esteira do outro lado foi escrita contra gzip há vinte anos e não vai mudar por causa de um arquivo. Onde você controla os dois lados, a conta é outra; quem chega nesta página normalmente controla só um deles.
O formato GZ, definido em 1996, compacta exatamente um fluxo de bytes: não existe diretório de entradas, nome de arquivo ou permissão dentro dele. O 7Z é o oposto — um contêiner com sua própria listagem de entradas, soma de verificação por item e criptografia.
Por isso a conversão passa por um TAR no meio do caminho: o conteúdo do 7Z é organizado num tarball, que é o formato que sabe guardar nomes e caminhos, e o gzip compacta esse tarball inteiro como um objeto só. É exatamente o arranjo `.tar.gz` que qualquer máquina Linux já reconhece sem precisar de explicação.
O LZMA2 usado no 7Z referencia uma repetição a até 64 MB de distância; o DEFLATE do gzip enxerga só os últimos 32 KB. É uma janela cerca de duas mil vezes menor, com uma codificação também menos eficiente do que encontra.
O arquivo cresce de forma mais visível numa coleção de textos parecidos entre si, porque é ali que a janela curta do gzip mais perde. Numa pasta de fotos ou vídeos já comprimidos, os dois compressores chegam perto, porque nenhum dos dois tem mais nada para aproveitar.
GZ é o único formato de arquivo do nosso catálogo marcado como streaming, e é essa marca que explica por que a internet inteira roda sobre gzip. Um fluxo gzip pode ser descompactado à medida que os bytes chegam, sem precisar ver o fim do arquivo antes.
É o que faz `curl … | tar -xz` funcionar, e o que deixa um agente de build extrair um artefato enquanto ele ainda está baixando. O 7Z não consegue isso: a estrutura do arquivo precisa ser lida inteira antes de qualquer entrada ser localizada, então o arquivo tem que estar completo em disco antes de começar a descompactar.
O suporte a gzip no navegador é universal, mas de um jeito discreto: o navegador negocia gzip como codificação de transferência e descompacta a resposta sem mostrar nada na tela, o que também explica por que ele salva um `.gz` baixado sem descompactar sozinho.
Na linha de comando a mesma regra vale para qualquer distribuição Linux, para o macOS e para praticamente toda imagem de contêiner construída sobre eles — o que não se pode dizer do xz num sistema mínimo, e muito menos do 7-Zip. Imagens propositalmente vazias como `scratch` do Docker não trazem nem gzip, vale a pena checar em vez de supor.
O download sai com o nome original mais a extensão pedida, então `pacote.7z` vira `pacote.gz` mesmo o conteúdo sendo um tarball compactado. A maioria das ferramentas Unix descobre isso pelos bytes, mas alguns scripts e servidores web não.
Renomear para `.tar.gz` ou `.tgz` — a mesma coisa com um nome mais curto — custa nada e evita a confusão clássica de alguém descompactar, encontrar um tar dentro, e achar que a conversão deu errado.
A compressão sólida é o que deixou o 7Z pequeno e é também o que torna a conversão trabalhosa: como as entradas formam um único fluxo contínuo, chegar a qualquer uma delas exige descompactar tudo o que veio antes. A conversão desempacota o arquivo inteiro antes de escrever o primeiro byte do tarball.
Por isso o limite de 25 MB e o teto de sessenta segundos por processo pesam mais nesse par do que num arquivo de origem TAR: um 7Z bem compactado é um upload pequeno que pode representar um volume de trabalho bem maior do que o tamanho sugere.
Se o tarball vai ser baixado inteiro e só então tocado, a vantagem de streaming do gzip não vale nada e a taxa de compressão mais fraca é pura perda. Converter o 7Z para XZ mantém a mesma família LZMA e produz um arquivo bem menor, sem custo nenhum num fluxo que nunca ia ser encanado.
A troca vale nos dois sentidos: o xz pede mais memória para descompactar, porque o decodificador guarda o dicionário inteiro, e nem toda imagem mínima de contêiner o traz instalado. Use gzip para pipeline e para um destino que você não controla, xz para lançamento e download onde o arquivo é buscado muito mais vezes do que é criado.
Este par roda no nosso servidor, não no navegador — o 7Z sobe por conexão criptografada, é extraído, tarizado e compactado, e a pasta de trabalho inteira, incluindo o tarball intermediário, é apagada quando o processo termina, mesmo em caso de falha.
O limite gratuito é de 25 MB por arquivo. Um 7Z protegido por senha falha de imediato com uma mensagem clara, porque o extrator recebe uma senha vazia de propósito em vez de tentar adivinhar.
A camada TAR registra um modo, um usuário e um grupo para cada item, e é por isso que ferramentas de empacotamento pedem tarball em primeiro lugar. O que ela não consegue é recuperar valores que nunca existiram: esses campos vêm da extração no nosso servidor, não da máquina onde os arquivos foram criados originalmente.
Para um artefato de build isso costuma ser inofensivo; para um script que precisa continuar executável, não. Se o seu pipeline depende de permissão de execução, ajuste isso depois da extração em vez de confiar que qualquer archive trouxe o bit junto — vale para qualquer conversor, não só para este.
| 7Z | GZ | |
|---|---|---|
| Nome completo | Arquivo 7-Zip | Arquivo Gzip |
| Extensão do arquivo | .7z | .gz, .tgz |
| Tipo de mídia | application/x-7z-compressed | application/gzip |
| Compressão | Sem perdas — nada é descartado | Sem perdas — nada é descartado |
| Publicado pela primeira vez | 1999 | 1992 |
| Especificação | — | RFC 1952 |
| Licença | Padrão aberto | Padrão aberto |
| Situação hoje | Atual | Atual |
| Abre no navegador | Nenhum navegador | Nenhum navegador |
| Considerado no lugar | ZIP, XZ | BZ2, XZ, ZIP |
Nada é descartado. 7Z e GZ guardam o conteúdo sem perda, então a conversão troca a embalagem e não a qualidade — e pode ser repetida sem que o estrago se acumule.
GZ comprime um único fluxo e não comporta um diretório. É justamente por isso que GZ costuma vir junto de um formato de arquivamento: o arquivo reúne os itens e GZ comprime o resultado.
7-Zip e Keka leem tanto 7Z quanto GZ, então dá para comparar o resultado com o original sem um segundo programa.
GZ trabalha com 32 KB de cada vez, contra 16 MB de 7Z: é dentro desse intervalo que uma repetição precisa caber para poder ser comprimida. É daí que vem a diferença de compressão e por isso ele é o mais rápido dos dois.
GZ e de 1992, descrito em RFC 1952. gzip, 7-Zip e Keka leem o formato.
É: esta conversão precisa de um software que não roda num navegador. O arquivo viaja criptografado até o nosso servidor, é apagado assim que o trabalho termina e o resultado, depois de 60 minutos. O trabalho é feito por 7-Zip, o compactador, na sua forma de linha de comando.
É, até 100 conversões por dia para arquivos de até 25 MB. Esse único limite existe porque esta conversão roda num servidor que nós pagamos. No resto aqui não há nada limitado, e marca d’água não existe em caso nenhum. O limite existe porque 7-Zip precisa de uma máquina nossa para rodar.
Não. GZ guarda o mesmo conteúdo sem jogar nada fora: o resultado é idêntico em qualidade ao original. Os arquivos saem byte a byte iguais. O que não sobrevive é o que o contêiner sabia *sobre* eles e não o que havia *dentro* deles: uma senha e, em alguns formatos, as permissões e as datas originais.
GZ comprime um único fluxo e não comporta um diretório. É justamente por isso que GZ costuma vir junto de um formato de arquivamento: o arquivo reúne os itens e GZ comprime o resultado.
Nada é descartado. 7Z e GZ guardam o conteúdo sem perda, então a conversão troca a embalagem e não a qualidade — e pode ser repetida sem que o estrago se acumule.