리눅스 명령어 · 3 min read · Sep 15, 2025

리눅스 tar 명령어 설명

리눅스 tar 명령어는 파일을 아카이빙하거나 배포할 때 리눅스 관리자의 스위스 군용 칼과 같습니다. Gnu Tar 아카이브는 여러 파일과 디렉토리를 포함할 수 있으며, 파일 권한을 유지할 수 있고 여러 압축 형식을 지원합니다. tar라는 이름은 “ T ape Ar chiver”의 약자로, 이 형식은 공식 POSIX 표준입니다.

Tar 파일 형식

tar 압축 수준에 대한 간단한 소개.

  • 압축 없음 압축되지 않은 파일은 .tar로 끝납니다.
  • Gzip 압축 Gzip 형식은 tar에 가장 널리 사용되는 압축 형식으로, 파일을 생성하고 추출하는 데 빠릅니다. gz 압축이 있는 파일은 일반적으로 .tar.gz 또는 .tgz로 끝납니다. 아래에서 tar.gz 파일을 생성하고 추출하는 방법에 대한 몇 가지 예를 찾을 수 있습니다.
  • Bzip2 압축 Bzip2 형식은 Gzip 형식보다 더 나은 압축을 제공합니다. 파일 생성 속도는 느리며, 파일 끝은 일반적으로 .tar.bz2입니다.
  • Lzip (LZMA) 압축 Lzip 압축은 Gzip의 속도와 Bzip2와 유사한 압축 수준(또는 더 나은)을 결합합니다. 이러한 좋은 특성에도 불구하고, 이 형식은 널리 사용되지 않습니다.
  • Lzop 압축 이 압축 옵션은 아마도 tar에 대한 가장 빠른 압축 형식일 것이며, gzip과 유사한 압축 수준을 가지고 있으며 널리 사용되지 않습니다.

일반적인 형식은 tar.gz와 tar.bz2입니다. 빠른 압축이 목표라면 gzip을 사용하세요. 아카이브 파일 크기가 중요하다면 tar.bz2를 사용하세요.

tar 명령어는 무엇에 사용되나요?

tar 명령어의 몇 가지 일반적인 사용 사례입니다.

  • 서버 및 데스크탑 백업.
  • 문서 아카이빙.
  • 소프트웨어 배포.

tar 설치하기

이 명령어는 대부분의 리눅스 시스템에 기본적으로 설치되어 있습니다. 명령어가 누락된 경우 tar를 설치하는 방법은 다음과 같습니다.

CentOS

CentOS에서 tar를 설치하려면 루트 사용자로 셸에서 다음 명령어를 실행하세요.

yum install tar

Ubuntu

이 명령어는 Ubuntu에 tar를 설치합니다. “sudo” 명령어는 apt 명령어가 루트 권한으로 실행되도록 보장합니다.

sudo apt-get install tar

Debian

다음 apt 명령어는 Debian에 tar를 설치합니다.

apt-get install tar

Windows

tar 명령어는 Windows에서도 사용할 수 있으며, Gunwin 프로젝트에서 다운로드할 수 있습니다. http://gnuwin32.sourceforge.net/packages/gtar.htm

tar.gz 파일 생성하기

셸에서 실행해야 하는 tar 명령어는 다음과 같습니다. 아래에서 명령줄 옵션을 설명하겠습니다.

tar pczf myarchive.tar.gz /home/till/mydocuments

이 명령어는 경로 /home/till/ mydocuments의 파일과 폴더를 포함하는 아카이브 myarchive.tar.gz를 생성합니다. 명령줄 옵션 설명:

  • [p] 이 옵션은 “preserve”를 의미하며, tar에게 아카이브에 파일 소유자 및 파일 권한에 대한 세부 정보를 저장하도록 지시합니다.
  • [c] create를 의미합니다. 이 옵션은 파일이 생성될 때 필수입니다.
  • [z] z 옵션은 gzip 압축을 활성화합니다.
  • [f] 파일 옵션은 tar에게 아카이브 파일을 생성하도록 지시합니다. 이 옵션이 생략되면 tar는 출력을 stdout으로 보냅니다.

tar 명령어 예제

예제 1: /etc 디렉토리 백업 /etc 구성 디렉토리의 백업을 생성합니다. 백업은 루트 폴더에 저장됩니다.

tar pczvf /root/etc.tar.gz /etc

tar로 /etc 디렉토리 백업하기

이 명령어는 /etc의 모든 파일이 백업에 포함되도록 루트로 실행해야 합니다. 이번에는 명령어에 [v] 옵션을 추가했습니다. 이 옵션은 verbose를 의미하며, tar에게 아카이브에 추가되는 모든 파일 이름을 표시하도록 지시합니다. 예제 2: /home 디렉토리 백업 홈 디렉토리의 백업을 생성합니다. 백업은 /backup 디렉토리에 저장됩니다.

tar czf /backup/myuser.tar.gz /home/myuser

myuser를 사용자 이름으로 바꾸세요. 이 명령어에서는 [p] 스위치를 생략했으므로 권한이 유지되지 않습니다. 예제 3: MySQL 데이터베이스의 파일 기반 백업 MySQL 데이터베이스는 대부분의 리눅스 배포판에서 /var/lib/mysql에 저장됩니다. 다음 명령어로 확인할 수 있습니다:

ls /var/lib/mysql

tar로 파일 기반 MySQL 백업하기

일관된 MySQL 파일 백업을 tar로 얻기 위해 데이터베이스 서버를 중지하세요. 백업은 /backup 폴더에 기록됩니다. 1) 백업 폴더 생성

mkdir /backup
chmod 600 /backup
  1. MySQL을 중지하고, tar로 백업을 실행한 후 데이터베이스 서버를 다시 시작합니다.
service mysql stop
tar pczf /backup/mysql.tar.gz /var/lib/mysql
service mysql start
ls -lah /backup

파일 기반 MySQL 백업.

tar.gz 파일 추출하기

tar.gz 파일을 추출하는 명령어는 다음과 같습니다:

tar xzf myarchive.tar.gz

tar 명령어 옵션 설명

  • [x] x는 extract를 의미하며, tar 파일을 추출할 때 필수입니다.
  • [z] z 옵션은 tar에게 압축 해제할 아카이브가 gzip 형식임을 알려줍니다.
  • [f] 이 옵션은 tar에게 아카이브 내용을 파일에서 읽도록 지시하며, 이 경우 파일은 myarchive.tar.gz입니다.

위의 tar 명령어는 조용히 tar.gz 파일을 추출하며, 오류 메시지만 표시합니다. 어떤 파일이 추출되는지 보려면 “v” 옵션을 추가하세요.

tar xzvf myarchive.tar.gz

[v] 옵션은 verbose를 의미하며, 파일이 압축 해제되는 동안 파일 이름을 표시합니다.

tar.gz 파일 추출하기

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.