차이
문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판이전 판다음 판 | 이전 판 | ||
tech:tar [2022/12/02 14:33] – [압축] V_L | tech:tar [2022/12/02 14:50] (현재) – [compress] V_L | ||
---|---|---|---|
줄 1: | 줄 1: | ||
{{tag> | {{tag> | ||
- | ====== 리눅스 압축명령 tar 이해하기====== | + | ====== |
+ | 리눅스 압축명령 tar 이해하기 | ||
리눅스의 배포본은 전부 압축되어서 제공되며, | 리눅스의 배포본은 전부 압축되어서 제공되며, | ||
DOS에서 많이 사용하는 lzh나 zip 파일을 이용할 수 있으며, 각각 ‘lharc’, | DOS에서 많이 사용하는 lzh나 zip 파일을 이용할 수 있으며, 각각 ‘lharc’, | ||
- | |||
=====tar 의 사용===== | =====tar 의 사용===== | ||
줄 14: | 줄 13: | ||
tar < | tar < | ||
- | |||
====묶음==== | ====묶음==== | ||
줄 22: | 줄 20: | ||
이 명령은 /etc 안의 모든 파일을 backup.tar의 이름으로 묶는다. 첫 번째 인자인 “cvf” 는 tar의 < | 이 명령은 /etc 안의 모든 파일을 backup.tar의 이름으로 묶는다. 첫 번째 인자인 “cvf” 는 tar의 < | ||
+ | 압축은 되지 않는다. 파일 크기는 총 합이 된다. | ||
====해제==== | ====해제==== | ||
줄 27: | 줄 26: | ||
현재 디렉토리의 backup.tar 파일을 푼다. 이것은 tar로 묶은 것을 풀 때 기존의 파일들이 덮어써지기 때문에 때로는 위험하다. backup.tar 파일이 디렉토리를 포함한다면, | 현재 디렉토리의 backup.tar 파일을 푼다. 이것은 tar로 묶은 것을 풀 때 기존의 파일들이 덮어써지기 때문에 때로는 위험하다. backup.tar 파일이 디렉토리를 포함한다면, | ||
- | |||
====경로==== | ====경로==== | ||
파일들을 풀 때, 파일이 어디로 풀리게 되는지 아는 것도 중요하다. 예를 들어, /etc/hosts, /etc/group, /etc/passwd 파일들을 묶는 다면, | 파일들을 풀 때, 파일이 어디로 풀리게 되는지 아는 것도 중요하다. 예를 들어, /etc/hosts, /etc/group, /etc/passwd 파일들을 묶는 다면, | ||
- | |||
tar cvf backup.tar /etc/hosts /etc/group /etc/passwd | tar cvf backup.tar /etc/hosts /etc/group /etc/passwd | ||
줄 39: | 줄 36: | ||
cd / | cd / | ||
tar xvf backup.tar | tar xvf backup.tar | ||
- | |||
왜냐하면, | 왜냐하면, | ||
줄 47: | 줄 43: | ||
디렉토리 이름 ‘/ | 디렉토리 이름 ‘/ | ||
- | |||
tar tvf backup.tar | tar tvf backup.tar | ||
이것은 파일을 풀기 전에 tar파일의 “index”를 출력한다. 이러한 방법은 tar 파일 안에 어떤 디렉토리의 파일들이 상대적으로 어떻게 저장이 되어있는지 볼 수 있으며, 따라서 올바른 장소로 풀 수 있다. | 이것은 파일을 풀기 전에 tar파일의 “index”를 출력한다. 이러한 방법은 tar 파일 안에 어떤 디렉토리의 파일들이 상대적으로 어떻게 저장이 되어있는지 볼 수 있으며, 따라서 올바른 장소로 풀 수 있다. | ||
- | |||
- | |||
- | |||
=====압축===== | =====압축===== | ||
- | MS-DOS의 프로그램과는 달리, tar는 파일을 묶을 때, 자동적으로 압축하지는 않는다. 그러므로, | + | MS-DOS의 프로그램과는 달리, tar는 파일을 묶을 때, 자동적으로 압축하지는 않는다. 그러므로, |
+ | ====compress==== | ||
- | gzip -9 backup.tar | + | compressed 파일의 끝에 확장자 .Z 가 붙는다. 예를 들면, |
- | + | ||
- | 위의 명령은 | + | |
====gzip==== | ====gzip==== | ||
- | ‘gzip’은 유닉스의 새로운 도구이며, | + | ‘gzip’은 유닉스의 새로운 도구이며, |
- | ====compress==== | + | 리눅스로 이식된 tar 버젼은 -z 옵션이 있어, |
- | compressed 파일의 끝에 확장자 .Z 가 붙는다. 예를 들면, backup.tar의 compress된 버전이 | + | |
- | =====압축방법 비교===== | + | |
- | ^ 비교 항목 | + | |
- | | 해제 속도 | lzop > gzip, zip > xz > 7z > rar > bzip2 | | + | |
- | | 합축 속도 | lzop > gzip, zip > xz > bzip2 > 7z > rar | | + | |
- | | 압축률 | xz > 7z > rar, bzip2 > gzip > zip > lzop | | + | |
- | | 가용성 (unix)| gzip > bzip2 > xz > lzop > zip > 7z > rar | | + | |
- | | 가용성 (windows)| zip > rar > 7z > gzip > bzip2, lzop, xz | | + | |
- | =====gzip과 tar의 혼합 사용===== | + | 이것은 아래와 두 명령과 같다. |
- | 일반적으로 파일들을 하나로 묶은후, 그것을 압축시켜 백업해 놓는 경우가 많을 것이다. | + | |
tar cvf backup.tar /etc | tar cvf backup.tar /etc | ||
- | | + | |
- | 따라서, 결과는 backup.tar.gz 이 생길 것이다. 파일을 풀기 위해서는 그 반대의 명령을 | + | 또한, 압축을 해제할 때는 아래와 같으며, |
+ | tar xvfz backup.tar.Z | ||
- | gunzip | + | 이것은 아래와 두명령과 같은 것이다. |
+ | |||
+ | uncompress | ||
tar xvf backup.tar | tar xvf backup.tar | ||
+ | Man page에 tar와 gzip에 대한 더 많은 정보가 언급되어 있다. | ||
- | 물론, tar파일을 풀기 전에는 언제나 올바른 디렉토리에서 확인해야 할 것이다. | ||
- | 여기서, 파이프와 리디렉션을 사용하여 위의 명령을 한 라인으로 처리할 수 있다. | ||
- | tar cvf - /etc | gzip -9c > backup.tar.gz | + | ====bzip2==== |
- | 이 명령은 먼저, tar 파일을 tar의 표준 출력(“-”로 표시)으로 보낸다. 이것은 gzip과 파이프되어 들어오는 tar 파일을 | + | 속도는 느리지만 |
- | gzip의 -c 옵션은 출력을 backup.tar.gz로 리디렉트하기 위해 표준 출력으로 보내라는 명령이다. | + | 압축 |
- | 그럼, 한 라인의 명령으로 이 파일을 | + | tar -cjvf filename.tar.bz2 Download |
+ | | ||
- | gunzip -c backup.tar.gz | tar cvf - | + | tar 에서 j 명령어로 bzip2 를 자동으로 호출하여 압축해 준다. |
- | 다시, gunzip은 backup.tar.gz의 내용을 | + | 압축풀기 |
+ | | ||
+ | |||
+ | ====xz==== | ||
- | ====z ==== | + | 옵션 %%--xz%% 사용 |
+ | =====압축방법 비교===== | ||
+ | ^ 비교 항목 | ||
+ | | 해제 속도 | lzop > gzip, zip > xz > 7z > rar > bzip2 | | ||
+ | | 합축 속도 | lzop > gzip, zip > xz > bzip2 > 7z > rar | | ||
+ | | 압축률 | xz > 7z > rar, bzip2 > gzip > zip > lzop | | ||
+ | | 가용성 (unix)| gzip > bzip2 > xz > lzop > zip > 7z > rar | | ||
+ | | 가용성 (windows)| zip > rar > 7z > gzip > bzip2, lzop, xz | | ||
- | 리눅스로 이식된 tar 버젼은 -z 옵션이 있어, 압축과 해제를 자동적으로 시킬 수 있다. | ||
- | |||
- | tar cvfz backup.tar.Z /etc | ||
- | |||
- | 이것은 아래와 두 명령과 같다. | ||
- | |||
- | tar cvf backup.tar /etc | ||
- | compress backup.tar | ||
- | |||
- | 또한, 압축을 해제할때는 아래와 같으며, | ||
- | |||
- | tar xvfz backup.tar.Z | ||
- | |||
- | 이것은 아래와 두명령과 같은 것이다. | ||
- | |||
- | uncompress backup.tar.Z | ||
- | tar xvf backup.tar | ||
- | |||
- | Man page에 tar와 gzip에 대한 더 많은 정보가 언급되어 있다. | ||
+ | [[https:// | ||