Saya memiliki file terkompresi (~ 60G) besar ( tar.gz
).
Saya biasa split
memecahnya menjadi 4 bagian dan kemudian cat
bergabung kembali.
Namun, sekarang, ketika saya mencoba memperkirakan ukuran file yang tidak terkompresi, ternyata lebih kecil dari aslinya? Bagaimana ini mungkin?
$ gzip -l myfile.tar.gz
compressed uncompressed ratio uncompressed_name
60680003101 3985780736 -1422.4% myfile.tar
compression
gzip
split
pkaramol
sumber
sumber
split
relevan dengan ini? Apakah Anda hanya memiliki masalah setelah berpisah dan bergabung kembali bersama?Jawaban:
Ini disebabkan oleh ukuran bidang yang digunakan untuk menyimpan ukuran yang tidak terkompresi dalam file yang di-gzip: hanya 32 bit, jadi
gzip
hanya dapat menyimpan ukuran file hingga 4 GiB. Apa pun yang lebih besar dikompresi dan tidak terkompresi dengan benar, tetapigzip -l
memberikan ukuran terkompresi yang salah.Jadi memisahkan tarball dan merekonstruksi itu tidak menyebabkan ini, dan seharusnya tidak mempengaruhi file - jika Anda ingin memastikan, Anda dapat memeriksanya
gzip -tv
.Lihat Cara tercepat untuk bekerja di luar ukuran terkompresi dari file gzip besar untuk rincian lebih lanjut, dan yang
gzip
pengguna :sumber