Zajímavý. Mám několik otázek, které by mohly upozornit na problém.
1/ Dehtujete na stejné platformě, na které dehtujete? Mohou to být různé verze tar
(např. GNU a starý unix)? Pokud se liší, můžete odtartovat stejnou krabici, na kterou jste tarovali?
2/ Co se stane, když jednoduše gunzipujete myarchive.tar.gz? Funguje to? Možná je váš soubor poškozen/zkrácen. Předpokládám, že byste si všimli, kdyby komprese generovala chyby, ano?
Na základě zdroje GNU tar vytiskne tuto zprávu pouze v případě, že find_next_block()
předčasně vrátí 0, což je obvykle způsobeno zkráceným archivem.
Měl jsem podobný problém se zkrácenými soubory tar produkovanými úlohou cron a přesměrováním standardního souboru do souboru.
Z rozhovoru s kolegou cron vytvoří kanál a omezí množství výstupu, který lze odeslat na standardní výstup. Opravil jsem to tím, že jsem z příkazu tar odstranil -v, takže byl mnohem méně podrobný a chybový výstup zůstal na stejném místě jako u ostatních úloh cronu. Pokud potřebujete podrobný výstup tar, budete se muset přesměrovat na soubor.
Je možné, že jste soubor nahráli v režimu ASCII místo v binárním režimu? Pokud ne, mohlo by to pomoci.
$ gunzip myarchive.tar.gz
A poté rozbalte výsledný soubor tar pomocí
$ tar xvf myarchive.tar
Doufám, že to pomůže.
V mém případě jsem spustil untar před dokončením nahrávání souboru tar.