대용량(~60G) 압축 파일( tar.gz
)이 있습니다.
한번은 split
4개로 나누어서 cat
다시 합쳤습니다.
그런데 이제 압축되지 않은 파일의 크기를 추정해 보니 원본 파일보다 작은 것으로 나오네요? 어떻게 이럴 수있어?
$ gzip -l myfile.tar.gz
compressed uncompressed ratio uncompressed_name
60680003101 3985780736 -1422.4% myfile.tar
답변1
이는 gzip 압축 파일에 압축되지 않은 크기를 저장하는 데 사용되는 필드의 크기로 인해 발생합니다. 이는 32비트에 불과하므로 gzip
최대 4GiB의 파일 크기만 저장할 수 있습니다. 더 큰 것은 올바르게 압축 및 압축 해제되지만 gzip -l
1.11 및 이전 버전에서는 압축되지 않은 크기가 잘못되었습니다.
따라서 타르볼을 분할하고 다시 빌드해도 이 문제가 발생하지 않으며 파일에 영향을 주어도 안 됩니다. 확실하게 확인하려면 를 사용할 수 있습니다 gzip -tv
.
바라보다대용량 GZIPPED 파일의 압축되지 않은 크기를 계산하는 가장 빠른 방법자세한 내용을 알아보고gzip
수동:
형식은
gzip
입력 크기 계수를 나타냅니다.2 큐빅, 따라서 4GiB 이상의 압축되지 않은 파일에 대해 압축되지 않은 크기 및 압축 비율이 잘못 나열됩니다.