본문으로 바로가기

아카이브(tar), 압축(gzip, bzip, xzip)

category SECURITY/Linux 2017. 4. 3. 16:14

 

아카이브(tar), 압축(gzip, bzip, xzip)


1. 아카이브 ( archive - 저장소 ) : tar       

 - ( 옵션에 -를 붙이면 동작하지 않는다. ) 

 - 파일을 백업하는 명령으로 자주 사용됨.
 - 압축파일이 아니다.
 - 장치 아카이브
 - 파일 아카이브

 - 파일안에 여러개의 파일들을 저장해 놓는다. (디렉터리와는 다른 개념이다.)

 

 - tar cf archive.tar : 파일 아카이브 생성
 - tar tvf archive.tar : 파일 아카이브 확인
 - tar xf archive.tar : 파일 아카이브 해제

ex) tar cvf archive.tar /etc/
     tar tvf archive.tar
     tar xf archive.tar   

tar 생성과 해제 명령을 통해 확인해보았습니다. tar 해제를 시키면 저장되어있던 /etc/ 폴더가 생성되는 것을 확인해 볼 수 있습니다.

tar와 압축을 함께 쓸 수 있습니다. 

두가지 방법이 있습니다. 첫번째는 tar를 생성한뒤에 압축명령을 통해서 압축하는 방법.  두번째는 tar옵션을 통해서 생성할때 압축을 하는방법.

옵션을 통해서도 가능합니다.(tar 옵션 -j , -z)
ex) tar cvfz archive.tar.gz /etc/
     tar xvfz archive.tar.gz /etc/

기본적으로 root 사용자의 경우에는 원본 속성을 유지한다.
   일반 사용자의 경우에는 -p 옵션을 사용해서 원본속성을 유지해야한다.

 


2. 압축

 - 파일의 크기를 줄이기 위한 목적


 1) gzip

 - 압축을 할 때에는 원본의 파일을 복사한 뒤에 압축해주는 것이 좋습니다. 압축을 하면 원본의 파일이 없어지기 때문입니다.

 - 압축 : gzip 파일

          -r 옵션 : 디렉터리안에 있는 파일들을 모두 압축합니다.

   해제 : gzip -d 파일 gunzip 파일

 

 ex) 먼저 /etc/services 파일과 /bin/ls 파일을 복사한뒤에 gzip 명령어를 통해 압축을 확인해 보았습니다.

gzip압축

압축 해제

test라는 디렉터리를 만들어 그 안에는 ls와 services 파일을 복사해두었습니다. -r 옵션을 통해서 디렉터리 안에 있는 모든 파일들을 압축해보았습니다.


 2) bzip2 : 용량이 큰파일인 경우 gzip보다 더 효율적이다.

 - 용량이 큰 파일의 경우 gzip보다 더 효율적입니다.

 - 압축 : bzip2 파일

          -k 옵션 : 원본파일을 그대로 보관해줍니다. (gzip과 다른점)

   해제 : bzip2 -d 파일명

 

ex) 똑같이 services 파일과 ls 파일을 bzip2로 압축하였습니다.

bzip2 압축

압축해제

bzip2의 옵션인 -k를 이용해 원본파일을 그대로 놔두고 새로 압축된것을 볼 수 있습니다.

 

 3) xzip : 제일 압축 효율이 좋다.

 - 참고로 CentOS5에서는 설치한 뒤에 사용해야 합니다. ( yum install xz -y )

 - 제일 압축 효율이 좋습니다.

 - 압축 : xz 파일

          -k : 원본파일을 그대로 보관해줍니다.

 - 해제 : xz -d 파일


 ex) 똑같이 services 파일과 ls 파일을 xzip으로 압축하였습니다.

xz 압축

압축 해제

xz의 옵션인 -k를 이용해 원본파일을 그대로 놔두고 새로 압축된것을 볼 수 있습니다.




'SECURITY > Linux' 카테고리의 다른 글

Find & Grep 명령어  (0) 2017.04.04
마운트(Mount), 런 레벨(Run Level)  (0) 2017.04.03
장치 - 디스크  (0) 2017.03.31
쉘에 대한 이해4  (0) 2017.03.30
쉘에 대한 이해3  (0) 2017.03.29