Это может быть несколько причин, по которым TAR будет считаться испорченным. Если бы это был частично завершенный архив, он просто был бы неполным, но, по крайней мере, не TAR до определенного момента. Если file thetarfile.tar
возвращает «данные», возможно, это сжатый архив?
Одна идея состоит в том, чтобы видеть, есть ли, возможно, какая-то проблема возврата каретки / разрыва строки. И это может быть решено с помощью dos2unix
, утилиты в Linux / Unix, которая преобразует возвраты каретки файлов / переносы строк в разрывы, совместимые с Linux. Чтобы использовать это просто сделайте следующее.
Сначала установите dos2unix
. Неясно, на какой системе вы пытаетесь это сделать, но в Ubuntu вы можете запустить эту команду aptitude
чтобы установить ее из репозитория:
sudo aptitude install dos2unix
Теперь создайте копию оригинального .tar
чтобы проверить его следующим образом:
cp tarfile.tar tarfile_TEST.tar
Теперь с dos2unix
просто запустите эту команду:
dos2unix tarfile_TEST.tar
Вывод будет примерно таким:
dos2unix: converting file tarfile_TEST.tar to UNIX format ...
Затем попробуйте распаковать содержимое этого файла TAR следующим образом:
tar -xf tarfile_TEST.tar
Теперь, если вам нужно установить dos2unix
в Mac OS X, здесь есть советы, как с этим справиться. Но это все догадка с моей стороны; не углубляйтесь слишком глубоко в эту теоретическую кроличью нору, пока она не покажет себя как истинное решение.