๊ฐœ๋ฐœ๋…ธํŠธ/Linux

[Linux] tar ๋ช…๋ น์–ด ์™„์ „ ์ •๋ณต — ๋ฐฑ์—…·์••์ถ•์˜ ํ•ต์‹ฌ ๐ŸŽ

๋กœ๋กœ๋ฝœ 2025. 11. 16. 07:21

tar ๋ช…๋ น์–ด๋Š” ๋ฆฌ๋ˆ…์Šค ๋ฐฑ์—…·์••์ถ•์˜ ํ•ต์‹ฌ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. tar.gz, tar.xz ์ƒ์„ฑ๋ถ€ํ„ฐ ํ•ด์ œ, ํŠน์ • ํŒŒ์ผ๋งŒ ์ถ”์ถœ, ์ œ์™ธ ์˜ต์…˜, ํฌ๋ก ํƒญ ์ž๋™ํ™”๊นŒ์ง€ ์‹ค๋ฌด์—์„œ ๋ฐ˜๋“œ์‹œ ์•Œ์•„์•ผ ํ•  tar ํ™œ์šฉ๋ฒ•์„ ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ/์šด์˜์„ ํ•˜๋‹ค ๋ณด๋ฉด “ํŒŒ์ผ์„ ๋ฌถ๊ณ  ์••์ถ•ํ•˜๋Š” ์ž‘์—…”์„ ์ •๋ง ์ž์ฃผ ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
SDK ํŒจํ‚ค์ง€ ์ „๋‹ฌ, ๋กœ๊ทธ ์ˆ˜์ง‘, ์†Œ์Šค์ฝ”๋“œ ์•„์นด์ด๋ธŒ, ๋นŒ๋“œ ์‚ฐ์ถœ๋ฌผ ์ „๋‹ฌ๊นŒ์ง€…
์ด ๊ณผ์ •์—์„œ ๊ฐ€์žฅ ๋งŽ์ด ์“ฐ์ด๋Š” ๋ช…๋ น์–ด๊ฐ€ ๋ฐ”๋กœ tar์ž…๋‹ˆ๋‹ค.

tar ๋ช…๋ น์–ด ๊ธฐ๋Šฅ ์š”์•ฝ: ๋ฌถ๊ธฐ, ์••์ถ•, ๋ณด์กด, ์ถ”์ถœ, ์ž๋™ํ™”
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 ์˜ต์…˜ ์„ค๋ช…(c, x, t, v, f)

๋˜ํ•œ 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๊ฐ€ ์••๋„์ ์œผ๋กœ ๋งŽ์ด ์“ฐ์ธ๋‹ค.

tar.gz, tar.xz, tar.bz2 ์••์ถ•๋ฅ ·์†๋„ ๋น„๊ต ํ‘œ
tar ์••์ถ• ๋ฐฉ์‹ ๋น„๊ต

(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 ํ•ต์‹ฌ ์˜ต์…˜ ์ •๋ฆฌ

tar ๋ช…๋ น์–ด ํ•„์ˆ˜ ์˜ต์…˜๊ณผ ์„ค๋ช…
tar ์˜ต์…˜ ์š”์•ฝ

ํŠนํžˆ --exclude ์™€ -C๋Š” ์‹ค๋ฌด์—์„œ ๊ฐ€์žฅ ์‚ฌ๊ณ ๊ฐ€ ๋งŽ์ด ๋‚˜๋Š” ์ง€์ ์ด๋ผ ๋ฐ˜๋“œ์‹œ ์ตํ˜€์•ผ ํ•œ๋‹ค.


5. ์‹ค๋ฌด์—์„œ ์ •๋ง ๋งŽ์ด ์“ฐ๋Š” tar ํ™œ์šฉ ํŒจํ„ด

tar ๋ฐฑ์—…·๋ณต์›·์ œ์™ธ·์ถ”์ถœ ์‹ค๋ฌด ํ”Œ๋กœ์šฐ
์‹ค๋ฌด 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์˜ ์ฐจ์ด ๋น„๊ต: ์••์ถ•๋ฅ , ์†์„ฑ ๋ณด์กด, ์šฉ๋„
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๋Š” ๋ณต์žกํ•œ ๋“ฏ ๋ณด์ด์ง€๋งŒ
ํŒจํ„ด ๋ช‡ ๊ฐœ๋งŒ ์ตํžˆ๋ฉด ์–ด๋–ค ๋ฆฌ๋ˆ…์Šค ์‹œ์Šคํ…œ์—์„œ๋„
๋ง‰ํž˜ ์—†๋Š” ํŒŒ์ผ ๊ด€๋ฆฌ๋ฅผ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.