Menarik. Saya punya beberapa pertanyaan yang mungkin menunjukkan masalahnya.
1/ Apakah Anda melakukan untar di platform yang sama dengan yang Anda tar? Itu mungkin versi yang berbeda dari tar
(mis., GNU dan old-unix)? Jika berbeda, dapatkah Anda melakukan untar pada kotak yang sama dengan yang Anda beri tar?
2/ Apa yang terjadi jika Anda hanya menggunzip myarchive.tar.gz? Apakah itu bekerja? Mungkin file Anda rusak/terpotong. Saya berasumsi Anda akan melihat jika kompresi menghasilkan kesalahan, ya?
Berdasarkan sumber tar GNU, itu hanya akan mencetak pesan itu jika find_next_block()
mengembalikan 0 sebelum waktunya yang biasanya disebabkan oleh arsip terpotong.
Saya memiliki masalah yang sama dengan file tar terpotong yang diproduksi oleh tugas cron dan mengarahkan keluar standar ke file memperbaiki masalah.
Dari berbicara dengan rekan, cron membuat sebuah pipa dan membatasi jumlah keluaran yang dapat dikirim ke standar keluar. Saya memperbaiki milik saya dengan menghapus -v dari perintah tar saya, membuatnya jauh lebih sedikit bertele-tele dan menjaga keluaran kesalahan di tempat yang sama dengan pekerjaan cron saya yang lain. Namun, jika Anda memerlukan keluaran tar verbose, Anda harus mengalihkan ke file.
Mungkin Anda telah mengambil file dalam mode ascii alih-alih mode biner? Jika tidak, ini mungkin membantu.
$ gunzip myarchive.tar.gz
Dan kemudian untar file tar yang dihasilkan menggunakan
$ tar xvf myarchive.tar
Semoga ini bisa membantu.
Dalam kasus saya, saya telah memulai untar sebelum pengunggahan file tar selesai.