리눅스 tar 명령어로 파일 압축 관리에 대해 알아보자.
시스템을 관리하면서 백업은 상당히 중요하다. 효율적으로 백업하고 복구하는 방법에 대해 살펴보자.
리눅스 압축관리 유틸리티 중 가장 많이 사용되고 있는 tar와 gzip, bzip2에 대해서 알아보자.
tar 명령어
파일을 압축하고 해제하는 명령어이다.
압축하기
tar [옵션] [생성파일] [압축할 파일]
압축해제
tar [옵션] [파일이름]
옵션
-z: gzip으로 압축하거나 해제한다.
-x: 압축된 파일로부터 압축을 해제한다.
-h: 심볼릭 링크를 묶지 않는다. 심볼릭 링크가 가리키는 파일을 묶는다.
-j: bzip2 필터를 사용해서 .bz2 파일을 압축하거나 해제한다.
-c: 새 저장 파일을 만든다.
-m: 파일의 변경시간정보를 유지하지 않는다.
-N, –after-date DATE, –newer DATE: 주어진 DATE보다 새로운 파일만 저장한다.
-p: 모든 퍼미션 정보를 유지한다.
-P: 파일이름 맨 앞 / 문자를 버리지 않는다.
-s: 저장 파일 목록과 똑같은 순서로 압축을 해제한다.
-v: 처리 중인 파일을 자세하게 보여준다.
-Z: compress로 압축하거나 해제한다.
-f, –file [HOSTNAME:]F: 저장 파일 혹은 장치 파일 F에 저장한다.
–version: tar 프로그램의 버전 정보를 출력한다.
–totals: -c로 만들어진 바이트 총합을 출력한다.
tar 압축이 아닌 파일 묶기를 해보자. (-cvf 옵션 사용)
[corej@localhost ~]$ ls Desktop source [corej@localhost ~]$ tar -cvf s.tar ./source ./source/ ./source/board/ [corej@localhost ~]$ ls Desktop s.tar source
tar로 묶인 파일을 풀어보자.
[corej@localhost ~]$ tar -xvf s.tar
gzip 이용하기
gzip으로 압축하기
[corej@localhost ~]$ tar -cvzf s.tar.gz ./source
현재 디렉터리에 gzip으로 해제하기
[corej@localhost ~]$ tar -xvzf s.tar.gz
bzip2 이용하기
bzip2로 압축하기
[corej@localhost ~]$ tar -cvjf s.tar.bz2 ./source
현재 디렉터리에 bzip2로 해제하기
[corej@localhost ~]$ tar -xvjf s.tar.bz2