Linux 시스템에서 가장 일반적인 아카이브 (패키지) 명령은 tar입니다.이 명령은 아카이브를 위해 단일 파일 또는 디스크에 많은 파일을 함께 저장합니다. 뿐만 아니라이 명령은 아카이브 파일에서 필요한 파일을 복원 할 수 있으며, 이는 압축 해제라고하는 패키징의 역 프로세스입니다.
tar 명령으로 보관 된 패키지는 종종 tarballs (tarball 파일은 모두 ".tar"로 끝남)이라고합니다.
포장 작업을 수행하는 Tar 명령
tar 명령이 패키징 작업에 사용되는 경우 명령의 기본 형식은 다음과 같습니다.
[root @ localhost ~] #tar [옵션] 소스 파일 또는 디렉토리
이 명령에 일반적으로 사용되는 옵션과 각각의 의미가 표 1에 나와 있습니다.
표 1 tar 패키지 명령 공통 옵션 및 의미
옵션 |
의미 |
-c |
여러 파일 또는 디렉토리를 압축하십시오. |
-A |
tar 파일을 아카이브 파일에 추가하십시오. |
-f 패키지 이름 |
패키지의 파일 이름을 지정합니다. 패키지의 확장자는 관리자에게 형식을 식별하는 데 사용되므로 확장자를 올바르게 지정하십시오. |
-v |
패키지 파일 프로세스를 표시합니다. tar 명령으로 옵션을 지정할 때 옵션 앞에 "-"를 입력 할 수 있습니다. 예를 들어 "cvf"옵션을 사용하면 "-cvf"와 동일한 효과가 있습니다. |
다음은 tar 명령을 사용하여 파일 및 디렉토리를 패키지하는 방법을 보여주는 몇 가지 예입니다.
[예 1] 패키지 파일 및 디렉토리.
[root @ localhost ~] # tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg #
anacondehks.cfg.tar 파일로 패키지 anacondehks.cfg
옵션 "-cvf"는 일반적으로 관용구입니다. 패키지화 한 후 파일 이름을 지정하고 ".tar"를 확장자로 사용하십시오. 패키지 디렉토리의 경우에도 마찬가지입니다.
[root @ localhost ~] # ll -d test /
drwxr-xr-x 2 root root 4096 6 월 17 일 21:09 test /
#test는 이전 테스트 디렉토리입니다.
[root @ localhost ~] # tar -cvf test.tar test /
test /
test / test3
test / test2
test / test1
# test.tar 파일에 디렉토리
압축 tar 명령은 공백으로 구분 된 여러 파일 또는 디렉토리를 패키지화 할 수도 있습니다. 예를 들면 다음과 같습니다.
[root @ localhost ~] # tar -cvf ana.tar anaconda-ks.cfg / tmp / #
anaconda-ks.cfg 파일과 / tmp 디렉토리를 ana.tar 파일 패키지에 포장하십시오.
[예 2] 디렉토리를 패키징하고 압축하십시오.
먼저 compression 명령으로 디렉토리를 직접 압축 할 수 없음을 선언하십시오 .gzip 명령 또는 bzip2 명령으로 패키지 파일을 압축하려면 먼저 tar 명령으로 디렉토리를 패키지해야합니다. 예를 들면 다음과 같습니다.
[root @ localhost ~] #ll -d test test.tar
drwxr-xr-x 2 root root 4096 6 월 17 일 21:09 test
-rw-r--r-- 1 root root 10240 6 월 18 일 01:06 테스트 .tar
# 이미 테스트 디렉토리를 test.tar 파일
[root @ localhost ~] # gzip test.tar
[root @ localhost ~] # ll test.tar.gz
-rw-r--r-- 1 루트 로 이전에 패키지했습니다. 루트 176 6 월 18 일 01:06 test.tar.gz
#gzip 명령은 test.tar를 test.tar.gz로 압축합니다.
패키징 작업을 수행하는 Tar 명령
tar 명령을 사용하여 tarball의 압축을 풀 때 명령의 기본 형식은 다음과 같습니다.
[root @ localhost ~] #tar [옵션] tarball
포장 풀기에 사용될 때 일반적으로 사용되는 옵션과 의미가 표 2에 나와 있습니다.
표 2 tar 솔루션 패키지 공통 옵션 및 의미
옵션 |
의미 |
-x |
타르 패키지 포장 풀기. |
-f |
압축 해제 할 tarball의 패키지 이름을 지정합니다. |
-t |
tar 패키지에있는 파일 또는 디렉토리 만 확인하고 tar 패키지의 압축을 풀지 마십시오. |
-C |
디렉토리 포장 풀기 위치를 지정하십시오. |
-v |
포장 풀기의 특정 프로세스를 보여줍니다. |
실제로 패키징 및 패키징에 비해 패키징 옵션 "-cvf"를 "-xvf"로 바꾸십시오. 시도해 봅시다 :
[root @ localhost ~] # tar -xvf anaconda-ks.cfg tar #
현재 디렉토리로 압축 해제
"-xvf"옵션을 사용하면 패키지의 파일이 현재 디렉토리로 추출됩니다. 압축 해제 위치를 지정하려면 "-C (대문자)"옵션을 사용해야합니다. 예를 들면 다음과 같습니다.
[root @ localhost ~] # tar -xvf test.tar -C / tmp #
test.tar 패키지를 / tmp / 디렉토리에 패키지
패키지에있는 파일 만 보려면 압축 풀기 옵션 "-x"를 테스트 옵션 "-t"로 바꿀 수 있습니다. 예를 들면 다음과 같습니다.
[root @ localhost ~] # tar -tvf test.tar
drwxr-xr-x root / root 0 2016-06-17 21:09 test /
-rw-rr-root / root 0 2016-06-17 17:51 테스트 / test3
-rw-rr- 루트 / 루트 0 2016-06-17 17:51 test / test2
-rw-rr- 루트 / 루트 0 2016-06-17 17:51 test / test1
# 테스트는 긴 형식으로 표시됩니다. tar 패키지의 파일 세부 사항
패키지 압축 (압축 풀기) 작업을 수행하는 Tar 명령
리눅스가 너무 지능적이지 않고 패키지 압축이고 실제로 ".tar"형식으로 패키지 된 다음 ".tar.gz"또는 ".tar.bz2"형식으로 압축되었다고 생각할 수 있습니다. 실제로 tar 명령은 동시에 패키지화 및 압축 될 수 있지만, 이전 설명은 Linux에서 패키지화와 압축의 차이점을 모든 사람에게 알리기 위해 별도로 패키지화 및 압축됩니다.
tar 명령이 동시에 패키지 압축 작업을 수행 할 때 기본 형식은 다음과 같습니다.
[root @ localhost ~] #tar [옵션] 압축 패키지 소스 파일 또는 디렉토리
여기에서 일반적으로 사용되는 두 가지 옵션은 다음과 같습니다.
-z : ".tar.gz"형식을 압축 및 압축 해제합니다.
-j : ".tar.bz2"형식을 압축 및 압축 해제하십시오.
[예 1] ".tar.gz"형식을 압축 및 압축 해제하십시오.
[root @ localhost ~] # tar -zcvf tmp.tar.gz / tmp / #
/ temp / 디렉토리를 ".tar.gz"형식으로 직접 복사 하고 "-z", "-cvf"및 일관된 포장 옵션
압축 풀기 옵션 "-xvf"앞에 "-z"옵션이 있습니다.
[root @ localhost ~] # tar -zxvf tmp.tar.gz #
". tar.gz"형식의 압축을 풀고 압축을 풉니 다
위에서 언급 한 "-C"옵션은 압축 해제 위치를 지정하는 데 사용되고 "-t"는 아카이브의 내용을 보는 데 사용됩니다.
[예 2] ".tar.bz2"형식을 압축 및 압축 해제하십시오.
".tar.gz"형식과의 유일한 차이점은 "-zcvf"옵션이 다음과 같이 "-jcvf"로 대체된다는 것입니다.
[root @ localhost ~] # tar -jcvf tmp.tar.bz2 / tmp / #
패키지는 ".tar.bz2"형식으로 압축되었습니다. 압축 된 패키지 파일 이름
[root @ localhost ~] # tar -jxvf tmp.tar.bz2
# 압축 해제 ".tar.bz2"형식
".tar.gz"및 ".tar.bz2"형식으로 파일을 직접 압축하는 것은 Linux에서 가장 일반적인 압축 방법이며 모든 사람이 마스터해야하는 압축 및 압축 해제 방법입니다.
tar 명령은 원래 테이프에 백업을 작성하는 데 사용되었으며 이제 모든 장치에서 작성할 수 있습니다. tar 명령을 사용하면 많은 수의 파일과 디렉토리를 하나의 파일로 패키징 할 수 있습니다. 이는 파일을 백업하거나 네트워크 전송을 위해 여러 파일을 하나의 파일로 결합하는 데 매우 유용합니다.
'IT's Life > Linux' 카테고리의 다른 글
Linux gzip 명령 : 파일 또는 디렉토리 압축 (0) | 2019.08.11 |
---|---|
Linux zip 명령 : 파일 또는 디렉토리 압축 / 리눅스 압축 해제 명령 : zip 파일 추출 (0) | 2019.08.11 |
패키징(아카이브) 및 압축 (둘 사이의 차이 포함) (0) | 2019.08.11 |
Linux mv 명령 : 파일 이동 또는 이름 바꾸기 (0) | 2019.08.11 |
Linux rm 명령 : 파일 또는 디렉토리 삭제 (0) | 2019.08.11 |