OS/Linux

Linux | 파일 관리 - 아카이브, 압축 (tar 명령어)

만두는정말맛있어 2022. 9. 16. 12:30

아카이브 (Archive)

- 소장품이나 자료 등을 디지털화하여 한데 모아서 관리할 뿐만 아니라 그것들을 손쉽게 검색할 수 있도록 모아 둔 파일.

- 여러 파일이나 디렉터리를 하나의 파일로 만드는 작업

- Linux에서는 'tar' 명령어를 통하여 아카이브를 진행할 수 있음

 

tar (Tape ARchive, 저장 보관소)

- 시스템 안에 있는 데이터들을 묶음 형태로 저장. 즉, 데이터들을 파일 형식으로 묶어서 보관

옵션
-c : 생성
-v : 과정 확인
-f : 대상 파일명 지정(필수 옵션)
-x : 아카이브 해제
-t : 아카이브 파일 내용 확인
-r : 기존 아카이브 파일에 파일 추가
-u : 기존 아카이브 파일에 존재하는 파일의 업데이트 버전으로 추가
-C : 경로 바꿔서 아카이브 해제 --delete --file=[아카이브 파일명] [삭제할 파일명]: 기존 아카이브 파일 내의 지정 파일 삭제

TEST1

실습을 위해 텍스트 파일 생성
tar 명령어를 통해 아카이브 파일 생성

 

t 옵션을 사용하여 아카이브 내부 출력
x 옵션을 사용하여 아카이브 해제 (현재 경로)
아카이브 해제 시 C 옵션을 사용하면 지정 디렉터리에 해제 가능
u 옵션을 사용하여 아카이브에 업데이트된 버전의 파일 추가
--delete 옵션을 사용하여 아카이브 내부의 지정 파일 삭제

 


 압축

 압축(Compress)이란? 

 - 여러 개의 데이터들을 하나로 묶어서 용량을 줄임

 

1) zip : 윈도우와의 호환성 좋음 
- CentOS에 기본적으로 설치가 되어있지 않으므로 설치 후 진행
 # yum install -y zip unzip


TEST2

zip, unzip 설치
실습을 위해 500M 크기의 파일 3개 생성


# zip 파일명 파일1 파일 2 ...
# unzip 파일명 : 압축 해제

zip 명령어를 통해 파일 압축
unzip 명령어를 통해 압축 해제

2) gzip (GNU: Gnome is Not Unix) : 압축 속도가 높은 편
# gzip 파일명 : 확장자 gz으로 압축
# gunzip 파일명 : 압축해제
# gzip -d 파일명 : 압축해제
# gzip -9 파일명 1~9 : 압축률 지정. 숫자가 클수록 압축률은 높지만 압축 속도는 느리다 


3) bzip2 : gzip보다 압축률이 높음
# bzip2 파일명 : 확장자 bz2으로 압축
# bunzip2 파일명 : 압축해제
# bzip2 -d 파일명 : 압축해제
# bzip2 -9 파일명 1~9 : 압축률 지정. 숫자가 클수록 압축률은 높지만 압축 속도는 느리다 

4) xz : gzip, bzip2보다 압축률이 더 높고 속도가 느림 (대용량 압축)
# xz 파일명 : 확장자 xz으로 압축
# unxz 파일명 : 압축해제
# xz -d 파일명 : 압축해제
# xz -9 파일명 1~9 : 압축률 지정. 숫자가 클수록 압축률은 높지만 압축 속도는 느리다

아카이브 파일 생성 후 압축 실행 (기본)

 

압축률을 1로 설정하여 압축 실행 (압축률 낮음, 실행 속도 빠름)
압축률을 9로 설정하여 압축 실행 (압축률 높음, 실행 속도 느림)

 


아카이브 + 압축

- 생성은 c, 해제는 x 옵션
# tar cvfz 파일명.tar.gz 대상파일1 대상파일2 ...
# tar cvfj 파일명.tar.bz2 대상파일1 대상파일2 ...
# tar cvfJ 파일명.tar.xz 대상파일1 대상파일2 ...

cvfz 옵션으로 아카이브와 압축을 동시에 실행 (gz)
cvfj 옵션으로 아카이브와 압축을 동시에 실행 (bz2)
cvfJ 옵션으로 아카이브와 압축을 동시에 실행 (xz)

728x90