tar ๋ช ๋ น์ด๋ ๋ฆฌ๋ ์ค ๋ฐฑ์ ·์์ถ์ ํต์ฌ ๋๊ตฌ์ ๋๋ค. tar.gz, tar.xz ์์ฑ๋ถํฐ ํด์ , ํน์ ํ์ผ๋ง ์ถ์ถ, ์ ์ธ ์ต์ , ํฌ๋ก ํญ ์๋ํ๊น์ง ์ค๋ฌด์์ ๋ฐ๋์ ์์์ผ ํ tar ํ์ฉ๋ฒ์ ์ ๋ฆฌํฉ๋๋ค.
๊ฐ๋ฐ/์ด์์ ํ๋ค ๋ณด๋ฉด “ํ์ผ์ ๋ฌถ๊ณ ์์ถํ๋ ์์
”์ ์ ๋ง ์์ฃผ ํ๊ฒ ๋ฉ๋๋ค.
SDK ํจํค์ง ์ ๋ฌ, ๋ก๊ทธ ์์ง, ์์ค์ฝ๋ ์์นด์ด๋ธ, ๋น๋ ์ฐ์ถ๋ฌผ ์ ๋ฌ๊น์ง…
์ด ๊ณผ์ ์์ ๊ฐ์ฅ ๋ง์ด ์ฐ์ด๋ ๋ช
๋ น์ด๊ฐ ๋ฐ๋ก tar์
๋๋ค.

์ฒ์์ ๋จ์ํ ์์ถ ๋๊ตฌ์ฒ๋ผ ๋ณด์ด์ง๋ง,
์ค์ ๋ก tar๋:
- ํ์ผ/ํด๋๋ฅผ ํ๋์ ๋ฌถ์์ผ๋ก ๋ง๋ค๊ณ
- gzip/xz ๋ฑ๊ณผ ๊ฒฐํฉํด์ ์์ถํ๊ณ
- ํผ๋ฏธ์ ·ํ์์คํฌํ·๊ฒฝ๋ก ๊ตฌ์กฐ๊น์ง ๊ทธ๋๋ก ์ ์งํ๋ฉฐ
- ํ์ํ ํ์ผ๋ง ๊ณจ๋ผ ์ถ์ถํ ์๋ ์๊ณ
- ์๋ํ ์คํฌ๋ฆฝํธ์๋ ์ฝ๊ฒ ๋ฃ์ ์ ์๋
๋ฆฌ๋ ์ค ๋ฐฑ์ ·์์นด์ด๋ธ์ ํ์ค ๋๊ตฌ์ ๋๋ค.
๊ฐ๋ฐ์ ํ๋ค ๋ณด๋ฉด ํ ๋ฒ์ฏค ์ด๋ฐ ๊ฒฝํ์ ํ๊ฒ ๋ฉ๋๋ค:
- zip์ผ๋ก SDK๋ฅผ ์ ๋ฌ๋ฐ์๋๋ฐ ํผ๋ฏธ์ ์ด ๊นจ์ ธ์ ๋ค์ ๋ฐ์์ผ ํ๋ ์
- tar.gz ํ๋ค๊ฐ -C ์ต์ ์ ๋ชฐ๋ผ์ rootfs ์์ ๋ฎ์ด์ด ๊ฒฝํ(์ ๋ง ํํจ)
- exclude ์ต์ ์ ๊น๋นกํด build/ ๋๋ ํฐ๋ฆฌ๊น์ง ๋ฌถ์ฌ 10GB ์์ถ์ด ๋์จ ์
- ์๋ฒ ๋๋ ์ฅ๋น์์ tar.xz ์์ถ ๋๋ฌธ์ CPU๊ฐ ๊ฝ ์ฐจ ์ฅ๋น๊ฐ ์ ์ ๋ฉ์ถ ๊ฒฝํ
๊ทธ๋์ tar๋ฅผ ํ์คํ๊ฒ ์ดํดํด๋๋ฉด ๊ฐ๋ฐ ์๋, ์ด์ ์์ ์ฑ์ด ๋ชจ๋ ์ฌ๋ผ๊ฐ๋๋ค.
1. tar ๋ช ๋ น์ด ๊ธฐ๋ณธ ๊ตฌ์กฐ
tar๋ ๊ธฐ๋ณธ์ ์ผ๋ก “ํ์ผ์ ๋ฌถ๋ ๋๊ตฌ(archive)”์
๋๋ค.
์์ถ์ tar ๋ด๋ถ ๊ธฐ๋ฅ์ด ์๋๋ผ ์ธ๋ถ ๋๊ตฌ(gzip, xz ๋ฑ)์ ํฉ์ณ์ ์ฌ์ฉํฉ๋๋ค.
๊ธฐ๋ณธ ๋ฌธ๋ฒ์ ์๋์ฒ๋ผ ๋จ์ํฉ๋๋ค.
tar [์ต์
] [ํ์ผ๋ช
.tar] [๋ฌถ์ ํ์ผ/ํด๋]
tar ์ต์ ์กฐํฉ์ ์ฃผ๋ก ๋ค์ 5๊ฐ์ง๋ฅผ ๊ธฐ๋ณธ์ผ๋ก ํฉ๋๋ค:

๋ํ tar๋ ์์ถ ๊ธฐ๋ฅ์ด ๋ด์ฅ๋ ๊ฒ์ด ์๋๋ผ
gzip(-z), bzip2(-j), xz(-J) ๋ฑ์ ์ธ๋ถ ๋๊ตฌ์ ์กฐํฉํฉ๋๋ค.
2. tar ๊ธฐ๋ณธ ์ฌ์ฉ ํจํด
1) ๋๋ ํฐ๋ฆฌ ๋ฌถ๊ธฐ (์์ถ ์์ด)
tar -cvf backup.tar project/
- project/ → backup.tar ๋ก ๋ฌถ์
- ์์ถ ์๋ (๋จ์ ์์นด์ด๋ธ)
2) ์์ถ ํด์
tar -xvf backup.tar
์๋ ํ์ผ ๊ตฌ์กฐ ๊ทธ๋๋ก ๋ณต์๋ฉ๋๋ค.
3) tar ๋ด๋ถ ํ์ผ ๋ชฉ๋ก ๋ณด๊ธฐ
tar -tvf backup.tar
์์ถ์ ํ์ง ์๊ณ ๋ด์ฉ๋ง ํ์ธํ ๋ ์ ์ฉํฉ๋๋ค.
3. tar + ์์ถ (gzip, xz, bzip2)
ํ์ ์์๋ tar ๋จ๋ ๋ณด๋ค tar.gz ๋๋ tar.xz๊ฐ ์๋์ ์ผ๋ก ๋ง์ด ์ฐ์ธ๋ค.

(1) gzip ์์ถ : ๊ฐ์ฅ ๋ง์ด ์ฐ๋ ํํ (tar.gz)
์์ฑ:
tar -czvf backup.tar.gz project/
ํด์ :
tar -xzvf backup.tar.gz
- ์๋ ๋น ๋ฆ
- ๋ฆฌ๋ ์ค ๋๋ถ๋ถ ์์คํ ์์ ํ์ค์ฒ๋ผ ์ฌ์ฉ๋จ
(2) xz ์์ถ — ๊ฐ์ฅ ๋์ ์์ถ๋ฅ
์์ฑ:
tar -cJvf backup.tar.xz project/
ํด์ :
tar -xJvf backup.tar.xz
ํ ์คํธ ํ์ผ ์์ฃผ์ SDK·์์ค์ฝ๋ ์์ถ์์ ํจ๊ณผ์ ์ ๋๋ค.
(3) bzip2 ์์ถ — ์ค๊ฐ ์์ถ๋ฅ
์์ฑ:
tar -cjvf backup.tar.bz2 project/
ํด์ :
tar -xjvf backup.tar.bz2
๊ณผ๊ฑฐ์๋ ๋๋ฆฌ ์ผ์ง๋ง ์์ฆ์ gzip ๋๋ xz๊ฐ ๋ ์ผ๋ฐ์ ์ด๋ค.
4. ์ค๋ฌด์์ ์ฐ๋ tar ํต์ฌ ์ต์ ์ ๋ฆฌ

ํนํ --exclude ์ -C๋ ์ค๋ฌด์์ ๊ฐ์ฅ ์ฌ๊ณ ๊ฐ ๋ง์ด ๋๋ ์ง์ ์ด๋ผ ๋ฐ๋์ ์ตํ์ผ ํ๋ค.
5. ์ค๋ฌด์์ ์ ๋ง ๋ง์ด ์ฐ๋ tar ํ์ฉ ํจํด

1) ํน์ ํด๋ ์ ์ธํ๊ณ ์์ถ
tar -czvf backup.tar.gz project/ --exclude="project/build"
build/ ํด๋ ์ ์ธํ๊ณ ๋ฐฑ์ .
2) ์ฌ๋ฌ ํด๋๋ฅผ ํ ๋ฒ์ ๋ฌถ๊ธฐ
tar -czvf logs.tar.gz log1/ log2/ log3/
์ด์ ์๋ฒ์์ ๋ก๊ทธ ์์ง ์ ์์ฃผ ์ฐ๋ ํจํด์ด๋ค.
3) tar ๋ด๋ถ ํน์ ํ์ผ๋ง ์ถ์ถ
tar -xvf backup.tar.gz path/to/file.c
์ ์ฒด ์์ถ์ ํ ํ์ ์์ด ์ํ๋ ํ์ผ๋ง ๊ฐ์ ธ์ฌ ์ ์๋ค.
4) tar ํ์ผ์ ํน์ ๊ฒฝ๋ก์ ํ๊ธฐ
tar -xzvf backup.tar.gz -C /tmp/
-C๋ฅผ ๋ชจ๋ฅด๋ฉด “์์ถ์ / ์๋์ ๋ฎ์ด์ฐ๊ธฐ” ๊ฐ์ ์ฌ๊ณ ๊ฐ ๋๊ธฐ ๋๋ฌธ์ ๊ผญ ์ตํ์ผ ํ๋ค.
5) ๋ ์ง ์๋ ํฌํจํ ๋ฐฑ์
tar -czvf project_$(date +%Y%m%d).tar.gz project/
์๋ ๋ฐฑ์ ์คํฌ๋ฆฝํธ์ ๊ธฐ๋ณธ ํํ.
6. tar vs zip

| ํญ๋ชฉ | tar | zip |
| ์์ถ ๋ฐฉ์ | ์ธ๋ถ ๋๊ตฌ์ ์กฐํฉ | ์์ฒด ์์ถ ํฌํจ |
| ์์ฑ ๋ณด์กด | ๋งค์ฐ ์ฐ์ | OS์ ๋ฐ๋ผ ๋ค๋ฆ |
| ์์ถ๋ฅ | tar.xz ๋งค์ฐ ์ฐ์ | ์ค๊ฐ |
| ์ฉ๋ | ๊ฐ๋ฐ/์๋ฒ | ์๋์ฐ ๊ณต์ |
๋ฆฌ๋
์ค ๊ฐ๋ฐ ํ๊ฒฝ์์๋ tar๊ฐ ์ฌ์ค์ ํ์ค์ด๋ค.
๋ฐ๋ฉด Windows ์ฌ์ฉ์์ ํ์ผ์ ์ฃผ๊ณ ๋ฐ๋ ๊ฒฝ์ฐ๋ zip์ด ๋ ํธํ์ฑ ์ข๋ค.
7. ๋์ฉ๋ tar ์์ ์ ์ ์ฉํ ์ต์
๋ฐฑ์
์ค ์ค๋จ๋๋ฉด ํ์ผ์ด ๋ง๊ฐ์ง ์ ์์ผ๋ฏ๋ก
๋๊ท๋ชจ tar ์์
์ ์ฒดํฌํฌ์ธํธ๋ฅผ ์ถ๊ฐํ๋ฉด ์ ์ฉํฉ๋๋ค.
tar -czvf backup.tar.gz project/ --checkpoint=.1000
1000๊ฐ ํ์ผ๋ง๋ค . ์ถ๋ ฅ → ์งํ ์ํฉ์ ์ฝ๊ฒ ํ์ธ ๊ฐ๋ฅ
8. ํฌ๋ก ํญ ์๋ ๋ฐฑ์ ์์
๋งค์ผ ์๋ฒฝ 3์์ ์๋ ์์ถ ๋ฐฑ์ :
0 3 * * * tar -czf /backup/log_$(date +\%Y\%m\%d).tar.gz /var/log/
์๋ฒ ์ด์ ์ ๋งค์ฐ ํํ ํจํด์ ๋๋ค.
9. tar ์์ถ๋ฅ ๋น๊ต (์ค๋ฌด ๊ธฐ์ค)
| ํ์ | ์์ถ๋ฅ | ์๋ | ํน์ง |
| tar.gz | ์ค๊ฐ | ๋น ๋ฆ | ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ ํฉ |
| tar.xz | ๋งค์ฐ ๋์ | ๋๋ฆผ | SDK/ํ ์คํธ์ฉ ์ต์ |
| tar.bz2 | ์ค๊ฐ~๋์ | ๋๋ฆผ | ์์ฆ์ ์ฌ์ฉ ๋น๋ ๋ฎ์ |
10. FAQ - ์์ฃผ ๋ฌป๋ ์ง๋ฌธ
Q1. tar๋ ์ ํ์ผ ์์ถ๊ณผ ๋ฌถ๊ธฐ๋ฅผ ๋์์ ํ์ง ์๋์?
A. ์๋ tar๋ "์์นด์ด๋ธ ์์ฑ ์ ์ฉ ๋๊ตฌ"์๊ณ , ์์ถ์ gzip·xz ๊ฐ์ ์ธ๋ถ ํ๋ก๊ทธ๋จ์ด ๋งก๋ ๊ตฌ์กฐ์๋ค.
Q2. tar.gz์ .tgz๋ ์ด๋ค ์ฐจ์ด๊ฐ ์๋์?
A. ๋์ผํฉ๋๋ค. ํ์ฅ์๋ง ๋ค๋ฅผ ๋ฟ์ ๋๋ค.
Q3. tar ํ์ผ ๋ณต๊ตฌ๊ฐ ๊ฐ๋ฅํ๊ฐ์?
A. ์์ถ ๋์ค ์ค๋จ๋์ง ์์๋ค๋ฉด ๋๋ถ๋ถ ์ ์์ ์ ๋๋ค. ์ค๋จ๋๋ฉด ๋ณต๊ตฌ๊ฐ ์ด๋ ต์ต๋๋ค.
Q4. ํน์ ํ์ผ๋ง tar์ ์ถ๊ฐํ ์ ์๋์?
A. ๊ฐ๋ฅํฉ๋๋ค. tar -rvf archive.tar newfile ํ์์ผ๋ก append๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
Q5. tar๋ฅผ ํ์ง ์๊ณ ๊ฒ์ํ ์ ์๋์?
A. ๊ฐ๋ฅํฉ๋๋ค. ๋ฆฌ์คํธ ์ถ๋ ฅ(tar -tf) ํ grep๊ณผ ์กฐํฉํ๋ฉด ๋ฉ๋๋ค.
tar -tf archive.tar | grep something
11. tar ๋ช ๋ น์ด๊ฐ ๊ฐ๋ฐ·์ด์ ํจ์จ์ ๋์ด๋ ์ด์
tar๋ ๋จ์ ์์ถ ๋๊ตฌ๊ฐ ์๋๋ผ
๋ฆฌ๋
์ค ์๋ฒ ๊ด๋ฆฌ์ ๊ฐ๋ฐ ํ๊ฒฝ์์ ํ์ค ๋ฐฑ์
·์์นด์ด๋ธ ๋๊ตฌ์
๋๋ค.
tar๋ฅผ ์ ํ์ฉํ๋ฉด:
- ์์ค์ฝ๋ ์์ถ์ด ์ฒด๊ณ์ ์ผ๋ก ์งํ๋๊ณ
- ๋ฐฑ์ /๋ณต์ ์์ ์ด ๊ฐ๋จํด์ง๊ณ
- exclude, ํน์ ๊ฒฝ๋ก ์ถ์ถ ๋ฑ ์ธ๋ฐํ ์ปจํธ๋กค์ด ๊ฐ๋ฅํ๋ฉฐ
- ์๋ํ ์คํฌ๋ฆฝํธ๋ก ์ ๋ฌด ํจ์จ์ด ํฌ๊ฒ ์ฆ๊ฐํฉ๋๋ค.
tar๋ ๋ณต์กํ ๋ฏ ๋ณด์ด์ง๋ง
ํจํด ๋ช ๊ฐ๋ง ์ตํ๋ฉด ์ด๋ค ๋ฆฌ๋ ์ค ์์คํ ์์๋
๋งํ ์๋ ํ์ผ ๊ด๋ฆฌ๋ฅผ ํ ์ ์๊ฒ ๋ฉ๋๋ค.
๋ค์๊ธ ๋ณด๊ธฐ
[Linux] scp ๋ช ๋ น์ด ์์ ์ ๋ณต — ์์ ํ๊ณ ๋น ๋ฅด๊ฒ ํ์ผ ์ ์กํ๊ธฐ ๐