본문 바로가기
리눅스

[리눅스] tar 압축, 백업

by 깅민 2022. 10. 25.

rync 백업 : https://gingmin.tistory.com/34

dd 백업 : https://gingmin.tistory.com/47

dump 백업 : https://gingmin.tistory.com/54

cpio 백업 : https://gingmin.tistory.com/55

 

tar

 

tar (tape archive)

tar [option] [파일명]
옵션 사용시 -를 사용하지 않아도 된다. 
단, 인자값이 있는 옵션을 여러 개 지정하는 경우에는 -기호를 사용해야 한다.

여러 파일을 하나로 묶어주는 작업

gzip bzip2 압축파일을 같이 사용할 수 있다.

부분백업 전체백업 증분백업 모두 사용 가능

 

옵션 설명
-f 파일 이름을 지정 (--file=파일명)
-c 파일을 tar로 묶음 (Create)
-x tar 압축을 품 (eXtract)
-v 내용을 자세히 출력 (Verbose)
-z gzip으로 압축하거나 해제함 (--gzip)
-t 목록 출력
-p 파일 권한을 저장
-C 경로를 지정(디렉토리 변경) (Change) (--directory=디렉토리명)
-r 기존의 tar 파일 뒤에 파일 추가
-h 심볼릭 링크가 가리키고 있는 원본 파일 저장
-p 파일이 생성되었을 때의 권한을 그대로 유지하게 해줌 (Permisson)
-Z 예전 표준 압축 파일인 tar.Z에 사용 (--compress, --uncompress)
-j bzip2 (--bzip2)
-J (--xz)
-g 증분백업 (백업을 매일매일 할경우 모든 파일을 백업(누적백업) 할려고 하면 시간도 오래 걸리고
용량도 많이 차지한다. 그래서 그날 한 변경사항만 백업하는 것을 증분백업이라고 한다.

 

사용되는 옵션 요약 확장자
xz (J) tar.xz
gzip (z) tar.gz
bzip2 (j) tar bz2
compress (xvf만 사용) tar.Z

 

예시

현재 디렉토리에서 .c로 끝나는 파일을 test.tar 파일(f)로 묶는데(c), 진행 결과를 출력함(v)

tar cvf test.tar *.c

 

test라는 디렉토리와 서브 디렉토리의 모든 파일을 test.tar 파일(f)로 묶음(c)

tar cf test.tar test/

 

현재 디렉토리에 test.tar파일을(f) 푸는데(x) 진행결과를 출력

tar xvf test.tar

 

현재 디렉토리에 있는 text.txt와 cfile.c 파일(f)을 cc.tar 파일로 추가로 묶는데(r), 진행 결과를 출력(v)

tar rvf cc.tar text.txt cfile.c

 

test.tar 파일(f)의 내용을 보여줌(t, v)

tar tvf test.tar

 

현재 디렉토리에서 .c로 끝나는 모든 파일을 gzip(z) 압축(c)과 동시에 test.gz 파일 (f)로 묶음 그리고 진행 결과 출력(v)

tar zcvf test.tar.gz *.c

 

gzip(z)로 압축된 php-4.0.4.tar.gz 파일(f)을 푸는데(x) 진행 결과를 출력(v)

tar zxvf php-4.0.4.tar.gz

 

bzip2(j)로 압축된 php-4.1.4.tar.bz2 파일(f)을 푸는데(x) 진행 결과 출력

tar jxvf php-4.1.4.tar.bz2

 

xz(J)로 압축된 php-4.2.4.tar.xz 파일(f)를 /usr/local/src 디렉토리에 (C) 푸는데(x) 진행 결과 출력(v)

tar Jxvf php-4.2.4.tar.xz -C /usr/local/src 

 

백업

증분백업

tar [옵션] [압축파일명] -g [백업정보 파일] [대상]

ex)
tar cvfz home_full.gz -g /backup/test_backup /home
tar cvfz home_1.gz -g /backup/test_backup /home
tar cvfz home_2.gz -g /backup/test_backup /home

2102

  1. gcc
  2. -c
  3. -o calc
  4. cf obj.tar *.o

 

1501

다음은 tar 명령어를 이용한 백업 예제이다.조건에 맞는 명령어 형식을 완성하시오.

# cd /home
# tar cvf( ① ) /backup/backup_` ( ② )`.tar.gz .
조 건
- ① : 백업 파일이 생성될 때 압축을 한다. (압축은 gzip를 사용한다.)
- ② : /backup 디렉터리안에 백업 파일이 생성 되어야 하며 backup_.tar.gz 파일이 생성되어야 한다.
(예: /backup/backup_0513.tar.gz)

답 : 

z

date +%m%d 또는 date ‘+%m%d’ 또는 date +’%m%d’

 

 

1901

Jxf
gcc
-c
-o calc

 


 

참고

https://starrykss.tistory.com/1877?category=726103  

'리눅스' 카테고리의 다른 글

[리눅스] modprobe  (1) 2022.10.27
[리눅스] cron  (0) 2022.10.27
[리눅스] gcc  (0) 2022.10.25
[리눅스] 파일(5) - 마운트 자동등록 fstab, df, UUID, mtab  (0) 2022.10.21
[리눅스] 파일(3) - 마운트, 파티션 나누기, fdisk  (0) 2022.10.21

댓글