답변:
tar
자체는 나중에 비교하기 위해 체크섬을 작성하지 않습니다. 당신이 경우 gzip
(가) tar
보관 해당 기능을 사용할 수 있습니다.
tar
을 사용합니다 compress
. -Z
아카이브를 작성하는 동안 플래그 를 사용하면 아카이브 tar
를 compress
읽거나 쓸 때 프로그램 이 사용 됩니다. 로부터 gzip
맨 :
표준 압축 형식은 일관성 검사를 허용하도록 설계되지 않았습니다.
그러나 -z
매개 변수를 사용할 수 있습니다 . 그런 tar
다음를 통해 아카이브를 읽고 씁니다 gzip
. 그리고 gzip
crc 체크섬을 작성합니다. 해당 체크섬을 표시하려면 다음 명령을 사용하십시오.
$ gzip -lv archive.tar.gz
method crc date time compressed uncompressed ratio uncompressed_name
defla 3f641c33 Sep 25 14:01 24270 122880 80.3% archive.tar
로부터 gzip
맨 :
처음 두 형식 ( gzip 또는 zip은 )을 사용할 때 gunzip은 32 비트 CRC를 확인합니다.
예, gzip 파일 형식 에는 아카이브가 손상되었는지 감지하는 데 사용할 수있는 CRC-32 체크섬이 포함되어 있습니다.
물론 체크섬을 통해 gzip 은 아카이브가 손상되었다는 것을 알려주지 만 실제로는 아카이브 내부의 데이터를 복구하는 데 도움이되는 작업은 없습니다. 따라서 방금 웹에서 다운로드 한 아카이브가 실제로 올바르게 다운로드되었는지 확인하는 등의 작업에 유용합니다.
신뢰할 수없는 미디어를 통해 아카이브를 저장하거나 전송하는 것이 실제로 걱정되는 경우 오류 와 함께 실제로 오류 수정 을 제공하는 par 와 같은 아카이브 형식을 사용하는 것이 좋습니다. 물론 이러한 형식의 단점은 오류 수정에 필요한 중복성이 파일 크기를 다소 증가 시킨다는 것입니다.
tar
무결성 검사가 없습니다. 예:
$ echo JJJJJJJJJJJJJJJJJJ > b
$ tar cvf a.tar b
$ sed -i s/JJJJJJJJJJJJJJJJJJ/tttttttttttttttttt/g a.tar
$ tar xvf a.tar
$ cat b
tttttttttttttttttt
a.tar
아카이브 의 내용이 변경되어 파일의 b
내용이 완전히 다르지만 tar는이를 인식하지 못합니다. tar 형식이 모두 tar-1.28 (최신)을 포함한 모든 tar에 적용됩니다 --format=gnu --format=posix
. pax
명령 (대체 타르 리더) pax -r < a.tar
또한 아카이브 변경을 통지하지 않습니다.
압축을 풀 때 tar가 오류를 발견하면 메시지를 인쇄하고 0이 아닌 종료 값으로 종료합니다. 이 동작은 tar 파일이 작성된 후 사용 된 압축 알고리즘과는 무관합니다.
신뢰할 수없는 링크를 통해 파일이 대상으로 전송되었는지 확인하려면 전송하기 전에 파일의 md5 합계를 작성하고 수신 후 md5 합계를 확인하십시오.
tar
자체적으로 관리 됩니다. 필요한 경우 추가 계층을 추가 할 수 있습니다. tar 파일의 무결성이 확인되면 tar 아카이브 내의 컨텐츠도 정상입니다. 그러나 처음에는 데이터를 전송하는 데 사용되는 프로토콜에 의해 처리되어야합니다.
tar
(적어도 없이-z
무결성 검사를하지 않는 옵션). 또한 허용되는 답변에이 내용이 나와 있습니다. 질문은 :gzip
(또는-z
옵션 의 사용 ) 무결성 검사를 추가 합니까?