공든탑앱 열기

tar

리눅스마스터 2급 · 소프트웨어 설치 · 약 10분

쉽게 말하면

여러 파일과 폴더를 상자 하나(파일 하나)로 묶거나 푸는 명령이에요. 묶기만 하면 크기는 그대로이고, 압축 옵션을 같이 주면 크기도 줄어요.

시험용 정의

tar(Tape ARchive)는 여러 파일·디렉터리를 하나의 아카이브 파일로 묶고 푸는 명령이다. 압축 프로그램과 함께 써서 .tar.gz(.tgz), .tar.bz2, .tar.xz를 만든다.

비유로 이해하기

이사할 때 물건을 박스 하나에 담는 것(tar)과, 그 박스를 진공 압축 팩으로 줄이는 것(gzip)은 다른 일이다.

자세히

동작 옵션 (하나만 고름)

옵션뜻
c묶기 (create)
x풀기 (extract)
t내용 목록 보기 (list)
r기존 아카이브 끝에 추가 (append)
u바뀐 파일만 추가 (update)

함께 쓰는 옵션

옵션뜻
f 파일아카이브 파일 이름 (바로 뒤에 파일명이 와야 함)
v처리 과정 표시 (verbose)
zgzip (.tar.gz, .tgz)
jbzip2 (.tar.bz2)
Jxz (.tar.xz)
C 디렉터리그 디렉터리에 풀기
p권한 유지
--exclude=패턴제외

자주 쓰는 형태

명령뜻
tar cvf a.tar dir묶기
tar xvf a.tar풀기 (현재 디렉터리)
tar tvf a.tar목록
tar czvf a.tar.gz dirgzip 압축 묶기
tar xzvf a.tar.gz -C /optgzip 풀기를 /opt에
tar cjvf a.tar.bz2 dirbzip2 압축 묶기
tar cJvf a.tar.xz dirxz 압축 묶기

f의 위치 함정

tar cvf a.tar dir은 맞지만 tar cfv a.tar dir은 f 뒤의 v를 파일 이름으로 받아 v라는 아카이브를 만들려 한다. 옵션을 붙여 쓸 땐 f를 맨 끝에 두자. 대시(-)는 붙여도 되고 안 붙여도 된다(tar -cvf = tar cvf).

시험에 나오는 그 밖의 말

말뜻
압축 옵션z는 gzip(.gz), j는 bzip2(.bz2), J는 xz(.xz). x 풀기, t 목록 보기, c 묶기
예tar xjvf a.tar.bz2 (bz2 풀기), tar tJvf a.tar.xz (xz 안 목록 보기)

시험에 이렇게 나와요

확인 문제

Q1. tar cvf backup.tar /etc를 실행하면 backup.tar의 크기는 /etc와 비교해 어떨까?

  1. 거의 같다 (묶기만 함)
  2. 두 배
  3. 0바이트
  4. 훨씬 작다 (압축됨)
정답 보기

1번 거의 같다 (묶기만 함)

tar는 여러 파일을 하나로 묶기만 한다(아카이브). 압축은 하지 않는다. 압축까지 하려면 z(gzip), j(bzip2), J(xz) 옵션을 더한다: tar czvf backup.tar.gz /etc.

Q2. backup.tar.xz를 풀지 않고 안에 든 파일 목록만 보는 명령은?

  1. tar tJvf backup.tar.xz
  2. tar cJvf backup.tar.xz
  3. tar tzvf backup.tar.xz
  4. tar xJvf backup.tar.xz
정답 보기

1번 tar tJvf backup.tar.xz

tar tJvf backup.tar.xz다. t는 목록, J는 xz 압축이다. x는 풀기, c는 묶기, z는 gzip이다.

Q3. 현재 디렉터리의 .c 파일만 source.tar로 묶는 명령은?

  1. tar xvf source.tar *.c
  2. tar tvf source.tar *.c
  3. tar cvf source.tar *.c
  4. tar cvf *.c source.tar
정답 보기

3번 tar cvf source.tar *.c

c + f 뒤에 아카이브 이름, 그다음 대상.

Q4. backup.tar.gz 파일을 /tmp 디렉터리에 푸는 명령은?

  1. tar tzvf backup.tar.gz /tmp
  2. tar czvf backup.tar.gz /tmp
  3. tar xzvf backup.tar.gz -C /tmp
  4. tar xvf -C /tmp backup.tar.gz
정답 보기

3번 tar xzvf backup.tar.gz -C /tmp

x(풀기) z(gzip) -C 대상.

Q5. tar 아카이브의 내용을 풀지 않고 목록만 보는 옵션은?

  1. x
  2. t
  3. c
  4. r
정답 보기

2번 t

t(list)다. 묶음 안의 파일 목록만 보여 준다. x는 풀기, c는 묶기, r은 덧붙이기다.

Q6. tar에서 xz 압축을 사용하는 옵션은?

  1. z
  2. J
  3. x
  4. j
정답 보기

2번 J

대문자 J다. 소문자 z는 gzip, j는 bzip2다. 소문자 x는 압축 종류가 아니라 풀기 옵션이다.

Q7. tar로 묶을 때 bzip2로 압축하는 옵션 조합은?

  1. cxvf
  2. czvf
  3. cJvf
  4. cjvf
정답 보기

4번 cjvf

cjvf다. j가 bzip2, z가 gzip, 대문자 J가 xz 압축이다.

헷갈리기 쉬운 O·X

tar cvf 명령만으로 파일이 압축되어 크기가 줄어든다.

정답 보기

X 묶기만 한다. 압축은 z·j·J.

tar 옵션 f 뒤에는 바로 아카이브 파일 이름이 와야 한다.

정답 보기

O 맞는 설명이다.

tgz 확장자는 tar.gz와 같은 형식이다.

정답 보기

O 맞는 설명이다.

함께 보면 좋은 개념