Eu tinha um grande arquivo compactado (~ 60G) ( tar.gz
).
Costumava split
dividi-lo em 4 partes e depois cat
juntá-los novamente.
No entanto, agora, quando estou tentando estimar o tamanho do arquivo descompactado, ele é menor que o original? Como isso é possível?
$ gzip -l myfile.tar.gz
compressed uncompressed ratio uncompressed_name
60680003101 3985780736 -1422.4% myfile.tar
compression
gzip
split
pkaramol
fonte
fonte
split
realmente relevante para isso? Você só tem o problema depois de dividir e juntá-los novamente?Respostas:
Isso é causado pelo tamanho do campo usado para armazenar o tamanho descompactado nos arquivos compactados em gzip: são apenas 32 bits, portanto,
gzip
só é possível armazenar tamanhos de arquivos com até 4 GiB. Qualquer coisa maior é compactada e descompactada corretamente, masgzip -l
fornece um tamanho descompactado incorreto.Portanto, dividir o tarball e reconstruí-lo não causou isso e não deveria ter afetado o arquivo - se você quiser ter certeza, pode verificar com ele
gzip -tv
.Consulte Maneira mais rápida de calcular o tamanho descompactado de um arquivo GZIPPED grande para obter mais detalhes e o
gzip
manual :fonte