반응형
tar는 "Tape ARchive"의 약자로, 압축된 아카이브 파일을 생성하거나 해제할 때 사용하는 리눅스 명령어다. 여러 파일이나 디렉터리를 하나의 파일로 묶어 효율적으로 관리할 수 있으며, 압축을 통해 용량을 줄일 수 있다. 또한, 파일 백업, 전송, 압축 등 다양한 작업을 간편하게 수행할 수 있는 유용한 도구다.
1. 기본 사용방법
tar [옵션] [압축파일명] [압축할 파일 및 디렉터리...]
2. 옵션
옵션 | 설명 |
-c,--create | 압축 파일을 생성 |
-x,--extract | 압축 파일을 해제 |
-f<파일>,--file=<파일> | 압축파일의이름을지정 |
-v,--verbose | 실행 과정을 출력 |
-z,--gzip | gzip으로압축 |
-j,--bzip2 | bzip2로압축 |
-t,--list | 압축파일안의내용을나열 |
-r,--append | 압축파일에파일을추가 |
-u,--update | 압축파일에수정된파일을업데이트 |
-d,--diff | 압축 파일에 대한 기존 파일과의 차이점을 보여줌 |
-C<디렉터리> | 지정한 디렉터리에 압축 파일을 생성하거나 해제 |
-p,--preserve-permissions | 파일의퍼미션(권한)을보존하여압축파일을생성 |
--same-owner | 압축파일을생성할때,원본파일과같은소유자로설정 |
--same-permissions | 압축 파일을 생성할 때, 원본 파일과 같은 권한으로 설정 |
-P,--absolute-names | 절대 경로로 파일을 압축하거나 해제 |
--exclude=<패턴> | 지정한패턴과일치하는파일,디렉터리를압축에서제외 |
--exclude-from=<파일> | 지정한파일에나열된패턴과일치하는파일,디렉터리를압축에서제외 |
--wildcards | 와일드카드 패턴을 사용하여 압축를 생성 하거나 해제 |
-N<날짜>,--newer=<날짜> | 지정한날짜이후에수정된파일만압축에추가 |
--exclude-caches | 캐시파일을압축에서제외 |
--exclude-backups | 백업파일을압축에서제외 |
--one-file-system | 여러파일시스템이있는경우,하나의파일시스템만압축 |
--to-command=<명령어> | 압축된데이터를지정한명령어로전송 |
-W,--verify | 압축생성,추출후,결과를확인 |
-M,--multi-volume | 분할압축를생성 |
--tape-length=<크기> | 각분할압축파일의크기를지정 |
-F<파일>,--info-script=<파일> | 분할압축생성시사용할정보스크립트파일을지정 |
--new-volume-script=<파일> | 다음분할압축파일을요청할때사용할스크립트파일을지정 |
3. 사용 예제
- 압축파일 생성
- -c: 압축 파일 생성
- -z: gzip으로 압축
- -v: 상세한 실행과정출력
- -f backup.tar.gz: 압축 파일 이름 지정
- /path/to/directory1 /path/to/directory2/file.txt:압축할파일과디렉터리경로
tar -czvf backup.tar.gz /path/to/directory1 /path/to/directory2/file.txt
- 압축해제
- -x: 압축 파일 해제
- -z: gzip으로 압축해제
- -v: 상세한 실행과정출력
- -f archive.tar.gz: 압축 해제할 파일 이름 지정
tar -xzvf archive.tar.gz
- 압축파일에 추가
- -r: 압축 파일에 추가
- -v: 상세한 실행과정출력
- -farchive.tar: 압축 파일이름지정
- newfile.txt: 압축 파일에 추가할 파일
tar -rvf archive.tar newfile.txt
- 특정 날짜 이후에 수정된 파일만 압축파일에 추가
- -N 2023-01-01: 2023년 1월 1일 이후에 수정된 파일만 압축파일에 추가
- -c: 압축파일 생성
- -v: 상세한 실행과정출력
- -farchive.tar: 압축 파일이름지정
- /path/to/directory: 압축할 디렉터리경로
tar -N 2023-01-01 -cvf archive.tar /path/to/directory
- 지정한 디렉터리에 압축파일생성
- -c: 압축파일 생성
- -z: gzip으로 압축
- -v: 상세한 실행과정출력
- -fbackup.tar.gz: 압축 파일이름지정
- -C /path/to/directory: /path/to/directory로 압축파일 생성
- .: 현재디렉터리압축
tar -czvf backup.tar.gz -C /path/to/directory .
- 분할 압축
- -c: 압축파일 생성
- -z: gzip으로 압축
- -v: 상세한 실행과정출력
- --tape-length=1G: 분할된 압축파일 크기를 1GB로 설정
- -f backup.tar.gz: 압축 파일 이름 지정
- /path/to/directory: 압축할 디렉터리경로
tar -czv --tape-length=1G -f backup.tar.gz /path/to/directory