
나는 "--use-compress-prog=pbzip2" 기능과 함께 tar를 사용하여 파일을 아카이브한 다음 pbzip2로 압축하여 "*.tar.bz" 아카이브를 얻었습니다.
그 후 pbzip2의 "-t" 스위치를 사용하여 결과 파일을 확인한 결과 테스트를 통과했습니다. 그러나 놀랍게도 아카이브를 추출하려고 할 때 "파일 불완전" 또는 기타 무결성 오류가 발생했습니다!
tar 파일에 문제가 있을 수 있는데 pbzip2로 압축했을 때는 문제가 없을 수도 있기 때문인가요? 그렇다면 tar 파일 자체를 확인할 수 있는 방법이 있나요? 그렇지 않다면 이것은 또 어떤 문제가 있을 수 있습니까? 또한 오류가 있는 tar 파일에서 데이터를 복구하는 방법이 있습니까?
이 과정에서 중요한 데이터가 이미 손실되었을 수도 있습니다...
요점은 아카이브가 생성된 후 아카이브의 무결성을 테스트하는 방법을 알고 싶다는 것입니다.
답변1
먼저 bzip2 압축을 테스트하면 OK
.
bzip2 -tv FILE.tar.bz2
다음으로 tarball의 압축을 풀어 tar만 가져옵니다.
bunzip2 FILE.tar.bz2
마지막으로 tar 파일을 확인하고,
tar -tvWf FILE.tar
사실 문제의 가장 좋은 지표는 추출 실패입니다. 원인을 좁힐 수 있기를 바랍니다. 또한 가끔 아카이브 확인에 실패했지만 여전히 올바르게 추출되었음을 언급해야 합니다.
답변2
위의 솔루션 외에도 항상 tar와 함께 파이프를 사용할 수 있습니다.
pbzip2 -dc FILE.tar.bz2 | tar -tvfW -