TAR(Tape ARchive)라고하는 것으로 이름에 있듯. 테이프(저장 장치)에 데이터를 입력하듯(하기 위해) 사용하는 포멧이다.


 Tape는 특징이 하나의 파일을 그대로 넣는 것이 특징인데, 파일의 끝과 시작을 알 수가 없다. 그래서 TAR을 이용해서 파일을 일정한 간격으로 나눠서 넣고, 파일의 끝과 시작을 정의 내려서 테이프에 저장/테이프에 읽어오기 등을 할 수 있다.


 이 포멧의 특징은, 해당 파일들을 전부다 일정한 간격으로 균일하게 나눠서 넣는 특징을 갖는다.(그래서 압축이 되지 않고, 오히려 용량이 증가하는 경우도 있다.)


 이 포멧의 단점은 해당 파일을 그대로 넣기 때문에 고장 유무를 알기 어렵고(헤더에서 검사하는 헤더 부분이 없다.)


 그래서, 원본에 온전한 것 처럼 보이지만, 사실은 깨진 경우도 있다.(그래서 SHA-1/2/3이나 MD-5 등을 이용해서 해시값를 따로 가지고 있어야 되는 경우도 있다.)


 주로 사용하는 것은 여러 파일들을 원본을 그대로 묶어 하나의 파일로 만들기 위해서 사용을 한다.


 요즘은 Zip등을 사용하지만, 단일 파일을 압축하는 gzip이나 mcm 등의 파일들에게 문서 압축을 원하는 것은 매우 어렵다. 그래서, 하나의 파일로 묶는 TAR을 사용해야 되는 경우가 생기는 것이다.


 그리고 엄청난 차이는 아니지만, zip/rar 등은, 각 파일마다 압축이 되어 있어서 tar로 묶어서 한 것에 비해선 파일 크기가 크다. 다시 말해 tar로 압축하는게 압축률이 매우 조금 증가시켜주는 경우가 있다.(큰 차이는 아니다.)


 tar는 리눅스(정확하겐 유닉스)에 사용된 압축 방법이라서 Windows에서 사용할려면, 압축 프로그램을 사용하거나(반디집, 알집 Winzip 등), gnu tar을 다운 받아서 사용하는 것이 좋다.


 

compress.zip

 해당 파일을 다운받으면, tar과 gzip등이 들어가 있는 것을 확인 할 수 있다.


 리눅스에서 사용할때는 tar는 gzip도 같이 사용할 수 있기 때문에, 문제 없으나, windows에서는 따로 설정해줘야 된다.


 일단, 리눅스는 잘 알려져 있듯, 다음과 같은 명령어를 사용하면 된다.


1
tar zcvf fileNames.tar.gz fileNames
cs


 fileNames는 폴더/파일 전부다 적용이 된다.


 z : gzip을 사용하기 위한 것으로 gzip을 사용해서 압축을 하고 싶지 않다면, 넣지 않아도 된다.


 c : create의 약자로 압축파일을 만든다라는 뜻이다.


 v : 압축하는 과정을 프린트하여 화면상에 띄운다.


 f : 파일 이름을 지정한다.


 여기서 윈도우는 gzip을 사용하지 못하기 때문에, z을 빼면 된다.


1
tar cvf fileNames.tar.gz fileNames
cs


 이렇게 하면, tar로 압축이 된다.


 다음은 압축을 해제하는 방법이다.


 방법은 유사하나, c로 압축 파일을 생성하는 것이 아닌, x를 이용해서 압축을 해체하면 된다.(x는 무슨 약자인지 모르겠다.)


1
tar xvf fileNames.tar.gz fileNames
cs


Posted by JunkMam
,