cka-ckad/LFCS
05. Archiving and Compression
book_lover
2025. 1. 22. 01:45
1. Archiving (아카이빙)
- 정의: 여러 파일/디렉토리를 하나로 묶어 보존하는 작업. 원본 속성을 유지하며 보관.
- 목적:
- 파일 보관 및 백업
- 전달 및 복원 용이
- 주요 명령어: tar, cpio
tar 명령어
- 기능: 여러 파일/디렉토리를 하나의 아카이브 파일로 묶거나 복원.
- 옵션
옵션 | 설명 |
-c | 새로운 아카이브 생성 |
-v | 처리 과정 상세 출력 |
-f | 아카이브 파일 이름 지정 |
-t | 아카이브 내용 출력 |
-x | 아카이브 해제 |
-z | gzip 압축 적용 |
-j | bzip2 압축 적용 |
-J | xz 압축 적용 |
tar 사용 예시
# 디렉토리 아카이빙:
tar -cf datadir.tar ./datadir
# 아카이브 내용 확인:
tar -tvf datadir.tar
# 아카이브 복원:
tar -xf datadir.tar
2. Compression (압축)
- 정의: 파일 크기를 줄이는 작업.
- 리눅스 주요 압축 유틸리티:
- gzip, bzip2, xz: 파일 단위 압축, 원본 삭제 후 압축파일만 남김.
- zip: 원본 보존, 디렉토리 압축 가능.
압축 명령어와 옵션
유틸리티 | 압축 명령어 | 해제 명령어 |
gzip | gzip file | gzip -d file.gz |
bzip2 | bzip2 file | bunzip2 file.bz2 |
xz | xz file | xz -d file.xz |
zip | zip file.zip dir/ | unzip file.zip |
압축 예시
# gzip으로 압축:
gzip datadir.tar
# bzip2로 압축:
bzip2 hosts
# xz로 압축:
xz passwd
# zip으로 디렉토리 압축:
zip -r datadir.zip datadir/
백업 명령어
# tar + gzip (-z):
sudo tar -czvf /home.tar.gz /home
# tar + bzip2 (-j):
sudo tar -cjvf /home.tar.bz2 /home
# tar + xz (-J):
sudo tar -cJvf /home.tar.xz /home
복원 명령어
# gzip 복원:
sudo tar -xzvf /home.tar.gz
# bzip2 복원:
sudo tar -xjvf /home.tar.bz2
# xz 복원:
sudo tar -xJvf /home.tar.xz
LFCS 시험 대비 문제 풀이
문제: gzip으로 압축된 tar 아카이브의 내용을 출력하는 명령은?