tar 및 분할 사용 후 "gzip: stdin: 예기치 않은 파일 끝"이 나타납니다.

tar 및 분할 사용 후 "gzip: stdin: 예기치 않은 파일 끝"이 나타납니다.

내 폴더에 약 600MB의 이미지 폴더가 있습니다 output_test. 그런 다음 다음 명령을 사용하여 100MB의 tar.gz 파일 청크를 만들었습니다.

tar -czf - output_test/ | split --bytes=100MB -d -a 3 - output_test.tar.gz.

이것은 나에게 다음 파일을 주었다

-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.000
-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.001
-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.002
-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.003
-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.004
-rw-rw-r-- 1 martin 96M Nov 13 17:12 output_test.tar.gz.005
-rw-rw-r-- 1 martin 26M Nov 13 17:12 output_test.tar.gz.006

모든 것이 괜찮은 것 같지만(전체 크기는 줄어들지 않은 것 같지만?) 파일 중 하나의 압축을 풀려고 하면

tar -xzf output_test.tar.gz.000

다음 오류가 발생합니다.

gzip: stdin: unexpected end of file
tar: Unexpected EOF in archive
tar: Unexpected EOF in archive
tar: Error is not recoverable: exiting now

이 오류가 발생하는 이유를 아는 사람이 있습니까?

그래도 파일이 잘 추출되는 것 같습니다. 그렇다면 이 오류를 무시해도 안전한지 잘 모르겠습니다.

답변1

이렇게 출력을 분할하면 결과는 다음과 같습니다.부분마스터 파일 자체로는 완전하지 않습니다.

따라서 ".000" 파일만 보면 출력의 첫 번째 부분만 볼 수 있습니다.

"실제" 파일을 다시 생성하려면 해당 파일을 함께 모아야 합니다.

그래서 당신은 다음과 같이 할 것입니다 :

cat output_test.tar.gz.* | tar xzf -

관련 정보