tar 파일 추출, 파일 크기가 줄어드는 이유

tar 파일 추출, 파일 크기가 줄어드는 이유

우리는 일반적으로 압축이 공간이나 전송 시간을 절약하기 위해 데이터 크기를 줄이는 것이라고 알고 있으므로 압축 파일을 추출하면 크기가 더 커질 것으로 예상됩니다. tar 형식(95KB)의 파일을 다운로드했고 압축을 풀면 크기가 줄어들었고(5.7KB) 그 아래에는 현재 0byte까지 표시되는 다른 파일도 있었습니다. 그 이유는 무엇일까요?

답변1

Tar 형식은 압축되지 않습니다. 그러나 아카이브의 각 파일이나 디렉터리 시작 부분에 헤더를 추가합니다. 헤더는 tar에서 파일 이름, 타임스탬프 등을 알려주는 데 사용됩니다. 해당 정보는 파일 내부 데이터의 일부가 아니지만 tar는 파일을 다시 생성하는 데 필요합니다. 각 헤더는 일반적으로 512바이트이지만 파일 이름이 100자를 초과하는 경우 더 커질 수 있습니다. tar 아카이브의 끝은 빈 헤더로 표시됩니다. 이러한 헤더는 일반적으로 아카이브와 아카이브에서 추출된 모든 항목 간의 크기 차이를 설명합니다.

tar 헤더의 크기로 설명할 수 없는 차이가 있을 수도 있지만 대부분 특수한 경우이므로 tar 파일이나 적어도 그 목록을 보지 않고는 진단하기 어렵습니다. 큰 차이점, 즉 거대한 tar 파일이 있지만 추출된 내용이 거의 없는 경우에 대한 한 가지 가능한 설명은 아카이브에 동일한 파일의 복사본이 많이 포함되어 있는 경우입니다. 누군가 백업 전략으로 마지막에 계속해서 최신 버전을 추가하는 경우 이런 일이 발생할 수 있습니다. tar 추출은 더 많은 공간을 사용하지 않고 매번 동일한 파일을 계속 덮어쓰게 됩니다.

관련 정보