TIL

TIL 9: Linux ๊ธฐ์ดˆ

Deviloper๐Ÿ˜ˆ 2021. 7. 30. 21:49

ํž˜๋“ค์—ˆ์Šต๋‹ˆ๋‹ค... ๋‚ด์šฉ์ด ์ƒ์†Œํ•œ ๊ฑด ๋‘˜์งธ์น˜๊ณ , ๋…ธํŠธ๋ถ์ด ๋ฒฝ๋Œ์ด ๋˜์—ˆ์—ˆ์–ด์š”ใ… ใ… ใ…  ์•„๋ฌด๋ž˜๋„ ํ„ฐ๋ฏธ๋„๋กœ ๋ฆฌ๋ˆ…์Šค ๊ณต๋ถ€ํ•˜๋ฉด์„œ sudo ์ด์šฉํ•˜๋ฉด์„œ ์ปดํ“จํ„ฐ๊ฐ€ ์ž˜๋ชป๋๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ ์ดํ›„๋กœ ์ •์‹ ์—†์ด ์ดˆ๊ธฐํ™”ํ•˜๊ณ  ๋ฐฑ์—…ํ•ด์„œ TIL์ด ๋ฐ€๋ ธ๋„ค์š” HA... ๊ฐ‘์ž๊ธฐ ์ปดํ“จํ„ฐ๊ฐ€ ์ž‘๋™๋˜์ง€ ์•Š์€ ๊ฒŒ ํŽ˜์–ดํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ค‘์— ๊ฐ‘์ž๊ธฐ ๋ฐœ์ƒํ–ˆ๋˜ ๊ฑฐ๋ผ ํŽ˜์–ด๋ถ„์—๊ฒŒ๋„ ๋„ˆ๋ฌด ์ฃ„์†กํ–ˆ์Šต๋‹ˆ๋‹ค.. ๋‹คํ–‰ํžˆ ๋ณด์กฐ(?) ์ปดํ“จํ„ฐ๊ฐ€ ์žˆ์–ด์„œ ๊ทธ๊ฑธ๋กœ ์ง„ํ–‰ํ•˜๊ณ  ํŽ˜์–ด ๋ถ„์ด ๋“œ๋ผ์ด๋ฒ„, ์ œ๊ฐ€ ๋„ค๋น„๊ฒŒ์ดํ„ฐ ์—ญํ• ์„ ํ•˜๋ฉด์„œ ์ž˜ ๋งˆ๋ฌด๋ฆฌ ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค! ๋„ˆ๋ฌด ๊ฐ์‚ฌํ–ˆ์–ด์š”ใ…Žใ…Žใ…Ž ๋„ค ์ด์ œ ๋นจ๋ฆฌ ๋‹ค์‹œ ๋ณธ๋ก ์œผ๋กœ ๋Œ์•„๊ฐ€์„œ Linux ๊ธฐ์ดˆ ์ •๋ฆฌํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!

 

์šฐ๋ฆฌ๋Š” ๋ณดํ†ต ์ปดํ“จํ„ฐ๋ฅผ ์กฐ์ž‘ํ•  ๋•Œ ๋งˆ์šฐ์Šค๋ฅผ ์›€์ง์—ฌ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๊ฑฐ๋‚˜, ํ‚ค๋ณด๋“œ๋ฅผ ์ด์šฉํ•ด์„œ ํƒ€์ดํ•‘์„ ํ•ฉ๋‹ˆ๋‹ค. ํฐ ์žฅ์• ๋ฌผ ์—†์ด ๋Œ€๋ถ€๋ถ„์˜ ์‚ฌ๋žŒ๋“ค์ด ์ปดํ“จํ„ฐ๋ฅผ ์ด๋ ‡๊ฒŒ ์‰ฝ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ด์œ ๋Š” ๋ฐ”๋กœ GUI ๋•๋ถ„์ž…๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ GUI๋ž€ Graphical User Interface๋กœ ๋ช…๋ น์–ด๋ฅผ ํ•˜๋‚˜ํ•˜๋‚˜ ์ž…๋ ฅํ•˜๊ธฐ๋ณด๋‹ค๋Š” ๊ทธ๋ž˜ํ”ฝ์  ์š”์†Œ๋ฅผ ์ด์šฉํ•ด ํด๋ฆญ ํ•œ๋ฒˆ์œผ๋กœ ์ž‘๋™๋  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์žฅ์น˜๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ด์™€ ๋Œ€๋น„๋˜๋Š” ๊ฑธ๋กœ CLI๊ฐ€ ์žˆ๋Š”๋ฐ์š”. CLI๋Š” Command-Line Interface๋กœ ๋ช…๋ น์–ด๋ฅผ ์ง์ ‘ ์šฐ๋ฆฌ๊ฐ€ ์ž…๋ ฅํ•ด์„œ ์ปดํ“จํ„ฐ์™€ ์†Œํ†ตํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ์žฅ์น˜๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์†Œํ†ต์„ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์šฐ๋ฆฌ๊ฐ€ ์ง์ ‘ ๋ช…๋ น์–ด ๊ธฐ๋Šฅ๋“ค์„ ๋‹ค ์•Œ๊ณ  ์žˆ์–ด์•ผ๊ฒ ์ฃ . ์ด๋ ‡๊ฒŒ๋งŒ ๋ณด๋ฉด GUI๊ฐ€ ๋” ํŽธํ•œ ๊ฒƒ ๊ฐ™์€๋ฐ ์™œ ๊ฐœ๋ฐœ์ž๋“ค์€ CLI๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ๊ฑธ๊นŒ์š”? AWS (Amazon Web Service)๋ฅผ ์˜ˆ๋กœ ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. AWS๋Š” ํด๋ผ์šฐ๋“œ ์ปดํ“จํŒ… ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ด์ฃผ๋Š” ๊ธฐ์—…์œผ๋กœ์„œ ์ง€์†์ ์œผ๋กœ ์„ฑ์žฅํ•˜์—ฌ ์ˆ˜๋งŽ์€ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ๋ฅผ ์„ธ์›Œ ์šฐ๋ฆฌ์—๊ฒŒ ํŽธ๋ฆฌํ•œ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ด์ฃผ๊ณ  ์žˆ๋Š” ํšŒ์‚ฌ์ž…๋‹ˆ๋‹ค. ์ด ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๊ธฐ ์œ„ํ•ด์„œ AWS๋Š” ํ•˜๋‚˜์˜ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ์•ˆ์— ์ตœ์†Œ 5๋งŒ๊ฐœ ์ด์ƒ์˜ ์„œ๋ฒ„ ์ปดํ“จํ„ฐ๊ฐ€ ์„ค์น˜๋ฉ๋‹ˆ๋‹ค. ์ด ๋งŽ์€ ์ปดํ“จํ„ฐ๋ฅผ ์ผ์ผ์ด ์กฐ์ž‘ํ•˜๋Š” ๊ฒƒ์€ ๊ฐ€๋Šฅํ•  ์ˆ˜๋„ ์žˆ๊ฒ ์ง€๋งŒ ํšจ์œจ์„ฑ์ด ๋„ˆ๋ฌด ๋–จ์–ด์งˆ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋•Œ CLI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด์ฃ ! ๊ทธ๋Ÿผ CLI๋Š” ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”? ํ„ฐ๋ฏธ๋„์„ ํ†ตํ•ด ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค (:

 

ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด

  • pwd: ํ˜„์žฌ ์œ„์น˜๋ฅผ ํ™•์ธํ•˜๋Š” ๋ช…๋ น์–ด
  • mkdir: ์ƒˆ๋กœ์šด ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ช…๋ น์–ด
  • ls: ํด๋”๋‚˜ ํŒŒ์ผ์˜ ๋ชฉ๋ก์„ ์ถœ๋ ฅํ•˜๋Š” ๋ช…๋ น์–ด
  • open: ํ˜„์žฌ ํด๋”๋ฅผ ํŒŒ์ผ ํƒ์ƒ‰๊ธฐ๋กœ ์—ฌ๋Š” ๋ช…๋ น์–ด
  • cd: ํด๋”์— ์ง„์ž…ํ•˜๋Š” ๋ช…๋ น์–ด
  • touch: ์ƒˆ๋กœ์šด ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๋Š” ๋ช…๋ น์–ด
  • cat: ํŒŒ์ผ์˜ ๋‚ด์šฉ์„ ํ„ฐ๋ฏธ๋„์— ์ถœ๋ ฅํ•˜๋Š” ๋ช…๋ น์–ด
  • rm: ํด๋”๋‚˜ ํŒŒ์ผ์„ ์‚ญ์ œํ•˜๋Š” ๋ช…๋ น์–ด
  • mv: ํด๋”๋‚˜ ํŒŒ์ผ์˜ ์œ„์น˜๋ฅผ ์ด๋™ํ•˜๊ฑฐ๋‚˜, ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ช…๋ น์–ด
  • cp: ํด๋”๋‚˜ ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜๋Š” ๋ช…๋ น์–ด
  • sudo: ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๋ช…๋ น์–ด

๊ฐœ์ธ์ ์œผ๋กœ ์ €๋Š” ์ด๋ฒˆ์— ๊ณต๋ถ€ํ•˜๋ฉด์„œ pwd, ls, cd๋ฅผ ์ œ์ผ ๋งŽ์ด ์‚ฌ์šฉํ–ˆ๋˜ ๊ฒƒ ๊ฐ™์•„์š”! ๋‚ด๊ฐ€ ์ง€๊ธˆ ์–ด๋А ํด๋”์— ์žˆ๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ์ž˜๋ชป๋œ ํด๋”์— ์žˆ๋‹ค๋ฉด ์–ด๋””๋กœ ์ด๋™ํ•ด์•ผ ํ• ์ง€ ๊ทธ๋Ÿด ๋•Œ๋งˆ๋‹ค ์ € ์„ธ๊ฐœ๋ฅผ ๋งŽ์ด ์ผ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ œ์ผ ๋งˆ์ง€๋ง‰์— ์žˆ๋Š” sudo... ์ €๊ฑฐ ์“ฐ์‹ค ๋•Œ๋Š” ์กฐ์‹ฌํ•˜๋ฉด์„œ ์“ฐ์„ธ์š”.. ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ ์ปดํ“จํ„ฐ๋ฅผ ๋‹ค์šด์‹œํ‚ฌ ์ˆ˜๋„ ์žˆ๋‹ค๋Š” ๊ฑฐ ๋ชธ์†Œ ์ฒดํ—˜ํ–ˆ์Šต๋‹ˆ๋‹ค ^__^ 

์ฐธ๊ณ ๋กœ AWS ํ™˜๊ฒฝ๊ณผ ๊ฐ™์ด ์›๊ฒฉ ์„œ๋ฒ„ ํ™˜๊ฒฝ์—์„œ ํ…์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ• ๋•Œ๊ฐ€ ์žˆ์„ ๊ฒ๋‹ˆ๋‹ค. ๊ทธ๋Ÿด ๋•Œ CLI ํ™˜๊ฒฝ์—์„œ ํ…์ŠคํŠธ๋ฅผ ์ž‘์„ฑํ•ด์•ผ ํ•  ํ…๋ฐ ํ…์ŠคํŠธ ์—๋””ํ„ฐ nano๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

 

 

ํŒจํ‚ค์ง€์™€ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ € 

๋ฆฌ๋ˆ…์Šค๋Š” ๋‹จ์ˆœํžˆ ํ„ฐ๋ฏธ๋„ ๋ช…๋ น์–ด๋ฅผ ์•ˆ๋‹ค๊ณ ํ•ด์„œ ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹™๋‹ˆ๋‹ค. ์™œ๋ƒํ•˜๋ฉด ํŒจํ‚ค์ง€์™€ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ผ๋Š” ๊ฒƒ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ธ๋ฐ์š”. ์—ฌ๊ธฐ์„œ ํŒจํ‚ค์ง€๋Š” ์—ฌ๋Ÿฌ ํŒŒ์ผ์ด ๋‹ด๊ฒจ์žˆ๋Š” ํ•˜๋‚˜์˜ ์ƒ์ž์ž…๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋Š” ํŒจํ‚ค์ง€์˜ ์„ค์น˜, ๋ณ€๊ฒฝ, ์‚ญ์ œ ๋“ฑ ๊ด€๋ฆฌ๋ฅผ ํŽธ๋ฆฌํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. MacOS์—์„œ์˜ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋กœ๋Š” brew๋ผ๋Š” ๊ฒƒ์ด ์žˆ๋Š”๋ฐ ์„ค์น˜ํ•˜์‹œ๋ฉด ์•ž์— brew๋ฅผ ๋ถ™์ด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • brew update: ํŒจํ‚ค์ง€์˜ ์—…๋ฐ์ดํŠธ ์—ฌ๋ถ€ ํ™•์ธ
  • brew outdated: ์—…๋ฐ์ดํŠธ ํ•„์š”ํ•œ ํŒŒ์ผ ์กฐํšŒ
  • brew upgrade: ํ”„๋กœ๊ทธ๋žจ ์—…๊ทธ๋ ˆ์ด๋“œ
  • brew info: ํ”„๋กœ๊ทธ๋žจ์˜ ์ •๋ณด ํ™•์ธ
  • brew install: ํ”„๋กœ๊ทธ๋žจ ์„ค์น˜
  • brew list: ์„ค์น˜๋œ ํ”„๋กœ๊ทธ๋žจ ๋ชฉ๋ก ๋ณด๊ธฐ
  • brew uninstall: ํ”„๋กœ๊ทธ๋žจ ์‚ญ์ œ

 

 

๋Ÿฐํƒ€์ž„์ด๋ž€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ๊ตฌ๋™๋˜๋Š” ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„ ์ด๋ž€ ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•  ๋•Œ, ํ”„๋กœ๊ทธ๋žจ์ด ๋™์ž‘ํ•˜๋Š” ๊ณณ์ž…๋‹ˆ๋‹ค. JavaScript์˜ ์˜ค๋ฆฌ์ง€๋„ ๋Ÿฐํƒ€์ž„์€ ๋ธŒ๋ผ์šฐ์ €์ธ๋ฐ์š”. ์—ฌ๊ธฐ์— ๋”ํ•ด ์ƒˆ๋กœ์šด ๋Ÿฐํƒ€์ž„์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. node.js๋ผ๋Š” ํ™˜๊ฒฝ์ด์ฃ . ๋”ฐ๋ผ์„œ ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ํ™˜๊ฒฝ์—์„œ๋„ JavaScript๋ฅผ ๊ตฌ๋™ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. node.js๋Š” brew์™€ ๊ฐ™์ด ํ„ฐ๋ฏธ๋„์— ์ƒˆ๋กœ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. node.js๋„ ์ง€์†์ ์œผ๋กœ ๊ฐœ์„ ์ด ๋ ํ…๋ฐ์š”. ์ด ๋•Œ ๋ฒ„์ „์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €์™€ ๊ฐ™์€ nvm(node version manager)๋กœ ์„ค์น˜ํ•ฉ๋‹ˆ๋‹ค.

npm (node package manager)์€ Node.js ๋กœ ๊ฐœ๋ฐœ๋œ ํ”„๋กœ๊ทธ๋žจ์„ ํŽธ๋ฆฌํ•˜๊ฒŒ ์„ค์น˜, ์—…๋ฐ์ดํŠธ ๋ฐ ์‚ญ์ œ๋ฅผ ํ•ด ์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์ž…๋‹ˆ๋‹ค.

 

 

๋””๋ ‰ํ† ๋ฆฌ ์ข…๋ฅ˜

  • /: ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ - ๋ฆฌ๋ˆ…์Šค ํŒŒ์ผ์ฒด์ œ์˜ ์ตœ์ƒ์˜ ๋””๋ ‰ํ† ๋ฆฌ๋“ค์˜ ์‹œ์ž‘์ ์„ ๋‚˜ํƒ€๋ƒ„.
  • ~: ํ™ˆ ๋””๋ ‰ํ† ๋ฆฌ - ํ™ˆ๋””๋ ‰ํ† ๋ฆฌ๊ฐ€ ์•„๋‹ˆ๋ผ ๊ทธ ์•„๋ž˜์— ์žˆ๋Š” ์‚ฌ์šฉ์ž์˜ ํ™ˆ๋””ํ…ํ† ๋ฆฌ๋ฅผ ๋งํ•จ.

๋””๋ ‰ํ† ๋ฆฌ์™€ ๊ด€๋ จํ•ด์„œ ๋‘ ๊ฐ€์ง€ ๊ฒฝ๋กœ๋ฅผ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. 

  • ์ ˆ๋Œ€ ๊ฒฝ๋กœ: ๊ธฐ์ค€์ ์œผ๋กœ๋ถ€ํ„ฐ์˜ ์ ˆ๋Œ€์ ์ธ ์œ„์น˜
  • ์ƒ๋Œ€ ๊ฒฝ๋กœ: ํŠน์ • ํด๋” ๋˜๋Š” ํŒŒ์ผ์˜ ์œ„์น˜๋ฅผ ํ˜„์žฌ ์œ„์น˜๋ฅผ ๊ธฐ์ค€์ ์œผ๋กœ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ํ˜„์žฌ ์œ„์น˜ํ•œ ํด๋”๋Š” ์ (.)์œผ๋กœ ํ‘œํ˜„ํ•˜๊ณ , ์ƒ์œ„ ํด๋”๋Š” ๋‘ ๊ฐœ์˜ ์ (..)์œผ๋กœ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค.