본문 바로가기

IT's Life/Linux

자세한 Linux tar 패키지 명령


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 명령을 사용하면 많은 수의 파일과 디렉토리를 하나의 파일로 패키징 할 수 있습니다. 이는 파일을 백업하거나 네트워크 전송을 위해 여러 파일을 하나의 파일로 결합하는 데 매우 유용합니다.