본문 바로가기
설치 및 기술 자료/Linux

[Linux] 리눅스 tar 명령어 사용법 - 파일 압축 및 해제

by 주식회사 서버몬 2020. 9. 16.

1. tar(Tape ARchiver)?

tar은 여러 개의 파일을 하나의 파일로 묶거나 풀 때 사용하는 명령입니다.

"테이프 아카이버(Tape ARchiver)"의 앞글자들을 따서 "tar"이라는 이름으로 불립니다.

 

리눅스에서 압축 파일을 다룰 때, "tar로 압축(compress)한다"는 표현을 쓰는 경우가 많은데, 정확히 말하자면 tar자체는 "데이터의 크기를 줄이기 위한 파일 압축"을 수행하지 않고, 여러 파일을 하나의 파일로 묶는 용도로 사용합니다.

tar을 통해 하나로 합쳐진 파일을 gzip 또는 bzip2 방식을 사용하여 압축할 수 있는데, 이 때 gzip 또는 bzip2 명령을 따로 수행하지 않고 tar 명령의 옵션으로 처리할 수 있습니다.

이런 이유로, "tar로 압축한다"는 표현이 통용될 수 있고, "tar 압축"이라는 말이 사용자 입장에서는 아주 잘못된 표현은 아니라고 할 수 있습니다.

 

tar명령을 통해 만들어지는 파일은 보통 ".tar" 확장자를 사용합니다.

그리고 gzip 또는 bzip2으로 압축된 경우, 파일 뒤에 ".gz" 또는 ".bz2" 확장자를 추가하여 ".tar.gz" 또는 ".tar.bz2"로 파일 이름을 지정할 수 있습니다.

드물지만 좀 더 간략하게, tar + gzip ".tgz", tar + bzip2 ".tb2", ".tbz", "tbz2" 등으로 지정하기도 합니다.

 

tar이 널리 쓰이게 이유 중 한 가지는, 단순 아카이버 기능에 더해, tar로 묶여지기 전 파일들의 속성과 심볼릭 링크, 디렉터리 구조 등을 그대로 가져갈 수 있는 특징 때문입니다.

그래서 최근에는 리눅스 용 프로그램, 데이터, 소스 및 라이브러리 등을 배포하는 용도로 많이 사용됩니다.

 

 

2. tar 명령어 옵션

tar 명령의 주요 옵션은 아래와 같습니다.

        -f     : 대상 tar 아카이브 지정 (기본 옵션)

        -c     : tar 아카이브 생성, 기존 아카이브 덮어 쓰기 (파일 묶을 때 사용)

        -x     : tar 아카이브에서 파일 추출 (파일 풀 때 사용)

        -v     : 처리되는 과정(파일 정보)을 자세하게 나열

        -z     : gzip 압축 적용 옵션

        -j     : bzip2 압축 적용 옵션

        -t     : tar 아카이브에 포함된 내용 확인

        -C     : 대상 디렉터리 경로 지정

        -A     : 지정된 파일을 tar 아카이브에 추가

        -d     : tar 아카이브와 파일 시스템 간 차이점 검색

        -r     : tar 아카이브의 마지막에 파일들 추가

        -u     : tar 아카이브의 변경된 파일들만 추가

        -k     : tar 아카이브 추출 시, 기존 파일 유지

        -U     : tar 아카이브 추출 전, 기존 파일 삭제

        -w     : 모든 진행 과정에 대해 확인 요청 (interactive)

        -e     : 첫 번째 에러 발생 시 중지

 

 

3. tar 명령어 사용 예제

tar명령어는 아래의 예제들처럼 사용이 가능합니다.

아래 예제들을 진행할때의 파일트리 구성입니다.

 

3-1. 현재 디렉터리의 모든 파일과 디렉터리를 tar로 묶기

ABC 디렉터리와 디렉터리 내부의 파일 AAA, BBB, CCC 가  tar 로 묶인 모습입니다 .

 

3-2. 대상 디렉터리를 포함한 모든 파일과 디렉터리를 tar로 묶기

AAA, BBB, CCC 파일을 포함한  ABC 디렉터리가  tar 로 묶인 모습입니다 .

 

3-3- 파일을 지정하여 tar 아카이브로 묶기

지정한  AAA, BBB, CCC 파일이  tar 로 묶인 모습입니다 .

 

3-4. tar 아카이브를 현재 디렉터리에 풀기

ABC.tar 가 현재 디렉터리에 풀린 모습입니다 .

 

3-5. tar 아카이브를 지정된 디렉터리에 풀기

ABC.tar 가 지정된  TestDir 디렉터리에 풀린 모습입니다 .

 

3-6. tar 아카이브의 내용 확인하기

ABC.tar 의 내용을 확인하는 모습입니다 .

 

3-7. 현재 디렉터리를 tar로 묶고 gzip으로 압축하기

현재 디렉터리 내부의  AAA, BBB, CCC 파일을  tar 로 묶고 , gzip 으로 압축하여  ABC.gz 가 생성되는    모습입니다 .

 

3-8. gzip으로 압축된 tar 아카이브를 현재 디렉터리에 풀기

tar 로 묶고 , gzip 으로 압축했던  ABC.gz 를 현재 디렉터리에 푸는 모습입니다 .

 

3-9. tar 아카이브 묶거나 풀 때 파일 별 진행 여부 확인하기

tar 로 묶거나 풀때 개별로 확인절차를 걸치고 작업을 진행하는 모습입니다 .

 

 

 

HPE, 레노버, 델 서버, 워크스테이션, 기업용 노트북 등 IT 제품은 서버몬에서 견적받아보세요~

제품에 대한 상담을 희망하시면02-2026-5062 or sales@servermon.co.kr로 문의 주세요.

서버몬에서 운영하는 IT 쇼핑몰을 구경하시려면, 하단의 로고를 클릭해주세요.

 

댓글