기본 콘텐츠로 건너뛰기

2022 08 26 회사 워크샵

리눅스 tar 압축


압축을 풀때는 항상 폴더를 하나 새로 만들고 그안에서 푸는 습관을 기르자.

이유는 현재 폴더에 같은 파일명이 있다면 물어보지 않고 새로 덮어쓰기 때문이다.



1. 압축 풀기



tar.gz 압축 풀기

tar  xvfz  test.tar.gz



tar 압축 풀기

tar  xvf    test.tar



tar.bz2 압축풀기

tar  xvfj   test.tar.bz2



2. 압축 하기 



현재 폴더에 모든 파일과 서브 폴더를 하나의 tar 파일로 합친다.

tar cvf test.tar ./*

※ 위의 명령은 썬 솔라리스 에서는 실행됨

※ 위의 명령은 IBM AIX 에서 실행됨

현재 폴더의 서브폴더인 test_dir 폴더를 tar 파일로 합친다.

tar cvf test.tar ./test_dir

※ 위의 명령은 솔라리스 OS에서는 실행됨



현재 폴더에 모든 파일과 서브폴더를 하나의 tar 파일로 합치면서 압축도 한다.

tar cvfz test.tar ./*

※ 위의 명령은 솔라리스 OS에서는 실행안됨



현재 폴더의 서브폴더인 test_dir 폴더를 tar.gz 파일로 합치면서 압축도 한다.

tar cvfz test.tar.gz ./test_dir

※ 위의 명령은 솔라리스 OS에서는 실행안됨
※ 위의 명령은 IBM AIX 에서 실행안됨

아래의 명령은 현대 경로에서 특정 폴더만 압축을 하는 명령
tar cvfz image.tar.gz ./1102 ./1101 ./1012 ./1011 ./1010


현재 폴더의 서브폴더인 test_dir 폴더를 tar.bz2 파일로 합치면서 압축도 한다.

tar  cvfj  test.tar.bz2  ./test_dir

※ 위의 명령은 솔라리스 OS에서는 실행안됨



3. 압축 원리



tar.gz 파일은 tar 명령어로 여러파일을 하나로 합친후 gzip 명령어로 압축을 하는것이다.

tar.bz2도 tar 명령어로 여러파일을 하나로 모은다음에 gzip 명령어로 압축을 하는것이다.



gzip : 리눅스, 유닉스에서 압축하는 명령어

tar : 리눅스, 유닉스에서 여러파일을 하나로 묶는 명령어 (50%의 압출률도 있음)



※ alz, zip 압축파일은 리눅스에서 압축풀기가 불가능

※ tar.gz, tar 압축파일은 윈도우의 알집에서 압축풀기가 가능



4. TIP



A 서버에서 B 서버로 파일을 이동할때 파일 갯수가 많아 SCP 명령어로 시간이 오래거리거나

에러나 날때는 A 서버에서 이동할 파일또는 폴더를 압축한후 SCP 명령어로 이동한후

B 서버에서 압축을 푸는 방법이 좋다.

댓글