답변1
tar
기본적으로 최소 아카이브 크기는 10240바이트입니다.GNU tar
매뉴얼세부 사항(그러나 이것은 GNU에만 해당되는 것은 아닙니다).
GNU를 사용하면 tar
다른 블록 크기나 다른 블록 인수 또는 둘 다를 지정하여 이 문제를 줄일 수 있습니다.
tar -cv -b 1 -f file.tar file.txt
관련 메타데이터가 file.txt
자신과 함께 저장되기 때문에 결과는 여전히 자신보다 큽니다 . file.tar
대부분의 경우 파일 메타데이터(이름, 크기, 타임스탬프, 소유권, 권한)에 대한 블록, 파일 내용, 아카이브 끝 항목에 대한 두 블록이 표시되므로 아카이브되지 않은 최소 아카이브 크기는 0이 포함됩니다. -length 파일은 4개 블록(2,048바이트 및 512바이트 블록 1개)입니다.file.txt
file.txt
답변2
tar
단순히 파일을 저장하는 것 외에도 다음 세 가지 작업을 수행해야 합니다.
- 메타데이터 저장(파일 이름, 모드, 소유자, 그룹, 날짜...)
- 파일의 끝을 표시하십시오.
- 아카이브의 끝을 표시하십시오.
tar
"테이프 아카이브"를 의미합니다. 테이프의 경우 파일의 끝이 어디인지 확인하는 것이 중요하며 장치는 검색할 때에도 이를 알아야 합니다(테이프가 더 빠르게 이동함). 따라서 테이프의 편의를 위해 tar는 각 파일 끝에 0을 추가하고 아카이브 끝에 또 다른 혈청 세트를 추가합니다. 당신이 지적한 두 번째 질문이 이것을 설명합니다.
을 사용하여 아카이브의 내용을 볼 수 있습니다 hexdump -C archive.tar |less
.