리눅스 tar와 tar.gz 차이 (압축, 해제 명령어)
- 운영체제(OS)
- 2022. 12. 1.
'여러 파일을 한 곳으로 모으는 동시에 용량을 줄이는 것'이 압축에 대한 개념입니다. 윈도우를 오래 사용하면 zip이라는 확장자와 함께 체득하게 됩니다. 그러나 리눅스에서는 파일을 모으는 것(아카이브)과 용량을 줄이는 것(압축)을 정확히 구분합니다. 그게 바로 tar와 tar.gz의 차이입니다.
tar, tar.gz 차이
tar는 여러 파일을 단순히 단일 파일로 묶는 개념입니다. 때문에 용량이 줄어는 효과가 없습니다. tar로 압축을 해보면 tar.gz보다 확연히 빠르게 압축 작업을 완료하는 걸 확인할 수 있습니다. 압축작업을 하지 않기 때문입니다.
tar로 묶은 파일은 여러 가지 압축 도구로 실제 '압축'할 수 있습니다. 그 결과물이 tar.z, tar.gz, tar.bz2 등의 확장자로 표현됩니다. tar 뒤에 추가 확장자가 붙습니다. 그중 가장 많이 볼 수 있는 게 tar.gz 형태입니다. tar.gz는 tar로 묶은 파일들을 gzip 알고리즘을 통해 압축한 것입니다.
tar 사용 예시
앞서 tar는 압축이 아닌 아카이브라고 강조했지만, 편의상 압축이라고 표현하겠습니다.
1. tar로 압축
test라는 폴더를 압축하는 경우
tar -cvf test.tar test
2. tar로 압축 해제
test.tar 파일을 해제하는 경우
tar -xvf test.tar
tar.gz 사용 예시
1. tar.gz로 압축
test라는 폴더를 test.tar.gz로 압축하는 경우
tar -zcvf test.tar.gz test
2. tar.gz 압축 해제
test.tar.gz 파일을 압축 해제
tar -zxvf test.tar.gz
자세히 보시면 아시겠지만, tar.gz로 압축 및 압축 해제하는 경우 명령어 옵션 맨 앞에 z를 하나 추가하면 됩니다. tar 명령어에서 z 옵션이 gzip이라는 알고리즘으로 압축하거나 해제한다는 의미이기 때문입니다.
tar 명령어 옵션
옵션 | 기능 |
c | 파일을 tar로 묶는다 |
v | 파일을 압축하거나 해제할 때 개별 파일을 화면에 출력한다. |
f | 파일 이름을 지정한다. |
x | tar 압축을 푼다. |
z | gzip으로 압축하거나 압축을 해제한다. |
C | 경로를 지정한다. |
텍스트 파일의 압축률이 높은 이유
압축 시 용량이 가장 큰 폭으로 줄어드는 건 텍스트 파일입니다. 압축 시엔 반복되는 데이터를 하나로 만들어 중복을 없앱니다. 텍스트엔 상당히 많은 중복 문자가 포함되어 있습니다. 용량을 획기적으로 줄일 수 있습니다. 예를 들어, 1GB가 넘는 대량의 텍스트 로그의 경우 압축을 하면 100MB 수준으로 줄어듭니다. 반면 동영상 파일, 그림 파일, 음악 파일 등은 애초에 압축된 형태의 파일이기 때문에 압축 시 용량 감소 효과가 상대적으로 작습니다.
'운영체제(OS)' 카테고리의 다른 글
x64는 64비트, x86은 32비트인 이유? (0) | 2022.12.05 |
---|---|
리눅스 로그 파일 특정 라인만 출력하기 (sed, more, head, tail) (0) | 2022.12.04 |
윈도우 서버 telnet 설치하는 방법 (0) | 2022.11.26 |
IT 솔루션 설치 서버 리소스 모니터링 (0) | 2022.11.24 |
컴퓨터 부팅 시간 확인 방법 (윈도우 이벤트 뷰어) (0) | 2022.11.19 |