Tar error: Unexpected EOF in archive

前端 未结 5 1465
挽巷
挽巷 2021-02-13 01:49

I tar a directory full of JPEG images:

tar cvfz myarchive.tar.gz mydirectory

When I untar the archive:

tar xvfz myarchive.tar         


        
5条回答
  •  臣服心动
    2021-02-13 02:22

    I had a similar error, but in my case the cause was file renaming. I was creating a gzipped file file1.tar.gz and repeatedly updating it in another tarfile with tar -uvf ./combined.tar ./file1.tar.gz. I got the unexpected EOF error when after untarring combined.tar and trying to untar file1.tar.gz.

    I noticed there was a difference in the output of file before and after tarring:

    $file file1.tar.gz
    file1.tar.gz: gzip compressed data, was "file1.tar", last modified: Mon Jul 29 12:00:00 2019, from Unix
    
    $tar xvf combined.tar
    $file file1.tar.gz
    file1.tar.gz: gzip compressed data, was "file_old.tar", last modified: Mon Jul 29 12:00:00 2019, from Unix
    

    So, it appears that the file had a different name when I originally created combined.tar, and using the tar update function doesn't overwrite the metadata for the gzipped filename. The solution was to recreate combined.tar from scratch instead of updating it.

    I still don't know exactly what happened, since changing the name of a gzipped file doesn't normally break it.

提交回复
热议问题