๊ถŒํ•œ - chmod(class & operation), execute & group

woomยท2023๋…„ 7์›” 5์ผ
0

Linux

๋ชฉ๋ก ๋ณด๊ธฐ
8/14
post-thumbnail

์ถœ์ฒ˜ : ์ƒํ™œ์ฝ”๋”ฉ - Linux


๐ŸŒผ ๊ถŒํ•œ ๊ธฐ๋ณธ

  • File & Directory์— ๋Œ€ํ•ด์„œ Read & Write & Excute (rwx)๊ถŒํ•œ์„ ์ œ์–ด
    • - : type(ํŒŒ์ผ์ด๋ผ๋Š” ์˜๋ฏธ directory๋Š” d)
    • rw-rw-r-- : access mode (์„ธ๋ถ€๋ถ„์œผ๋กœ ๋‚˜๋ˆ ์„œ ๊ฐ๊ฐ owner, group, other์˜ ๊ถŒํ•œ์„ ์˜๋ฏธ)
    • dailycode dailycode: owner(ํŒŒ์ผ์ด ๋ˆ„๊ตฌ์˜ ๊ฒƒ์ด๋ƒ) group

๐Ÿ“• ๊ถŒํ•œ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•(chmod)

  • chmod(change access mode) : ๊ถŒํ•œ ๋ณ€๊ฒฝ

    • chmod o-r perm.txt : perm.txtํŒŒ์ผ์— ๋Œ€ํ•œ other์‚ฌ์šฉ์ž์˜ ์ฝ๊ธฐ ๊ถŒํ•œ ์ œ๊ฑฐ(๋งŒ์•ฝ์— ์ฝ๊ธฐ ๊ถŒํ•œ์„ ์ฃผ๊ณ  ์‹ถ์œผ๋ฉด o+r)
  • chmod u-r perm.txt : ์†Œ์œ ์ž(user)์˜ ๊ถŒํ•œ๋„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ


๐Ÿ“™ ์‹คํ–‰์˜ ๊ฐœ๋…๊ณผ ๊ถŒํ•œ ์„ค์ • (execute)

  • /bin/bash ์‹คํ–‰ํ• ํŒŒ์ผ.sh

    • ํŒŒ์ผ ์‹คํ–‰๋จ
    • ํ•ด์„๊ธฐ๋ฅผ ํ†ตํ•ด์„œ (์‹คํ–‰ํ• ํŒŒ์ผ)์‹คํ–‰ํ•ด์•ผ๋งŒ ์‹คํ–‰๊ฐ€๋Šฅ ๋งŒ์•ฝ ํ”„๋กœ๊ทธ๋žจ์ฒ˜๋Ÿผ ์‹คํ–‰ํ•˜๊ณ  ์‹ถ์œผ๋ฉด ์‹คํ–‰ ๊ถŒํ•œ ํ•„์š”
  • chmod u+x ๊ถŒํ•œ์ค„ํŒŒ์ผ.sh

    • user์—๊ฒŒ ์‹คํ–‰ ๊ถŒํ•œ ์ค„๊ฑฐ์•ผ
    • ์‹คํ–‰ ๊ถŒํ•œ์ด ์žˆ์œผ๋ฉด ํ•ด์„๊ธฐ๊ฐ€ ์—†์–ด๋„ ์‹คํ–‰ ๊ฐ€๋Šฅ(์‹คํ–‰ ๊ถŒํ•œ ์žˆ์œผ๋ฉด ์šด์˜์ฒด์ œ๋Š” ํŠน์ˆ˜๊ธฐํ˜ธ(#!) ๋’ค์—์žˆ๋Š” /bin/bash๋ผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๊ตฌ๋™์‹œํ‚ค๋ฉด์„œ ํŒŒ์ผ ์ „๋‹ฌ)

๐Ÿ“’ directory์˜ ๊ถŒํ•œ

  • r : ์ฝ๊ธฐ ๊ฐ€๋Šฅ ์—ฌ๋ถ€(๋””๋ ‰ํ† ๋ฆฌ์•ˆ์˜ ๋ชฉ๋ก ํ™•์ธ(ls -l) ๊ฐ€๋Šฅ ์—ฌ๋ถ€)

  • w : ์“ฐ๊ธฐ ๊ฐ€๋Šฅ ์—ฌ๋ถ€(๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์—์„œ ํŒŒ์ผ ์ƒ์„ฑ, ์‚ญ์ œ, ์ด๋™ ๋ถˆ๊ฐ€)

  • x : ์‹คํ–‰ ๊ฐ€๋Šฅ ์—ฌ๋ถ€(๋””๋ ‰ํ† ๋ฆฌ์— cd๋ช…๋ น์„ ํ†ตํ•ด ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๋Š”์ง€ ์—ฌ๋ถ€)


๐Ÿฃ ์ฐธ๊ณ 

  • ๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์— ๋””๋ ‰ํ† ๋ฆฌ ์•ˆ์— ๋””๋ ‰ํ† ๋ฆฌ....๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ ํ•œ๊บผ๋ฒˆ์— mode ๋ณ€๊ฒฝ ํ•˜๋Š” ๋ฐฉ๋ฒ•
    • chmod -R o+w perm : perm ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด์˜ ๋ชจ๋“  ํŒŒ์ผ๊ณผ ๋””๋ ‰ํ† ๋ฆฌ์— ๋Œ€ํ•ด ์žฌ๊ท€์ ์œผ๋กœ ๊ถŒํ•œ ๋ณ€๊ฒฝ
    • -R(Recursive) : ์žฌ๊ท€์ ์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋ผ

๐Ÿ“— chmod ์‚ฌ์šฉ๋ฒ• ์ •๋ฆฌ (class & operation)

  • chmod o+r a.txt ์™€ ๊ฐ™์€ ๋ฐฉ์‹์€ ํ•œ๋ฒˆ์— ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€
    • chmod o+x a.txt ์™€ ๊ฐ™์ด ๋”ฐ๋กœ๋”ฐ๋กœ ํ•ด์•ผํ•ด => ๋ถˆํŽธ
  • Octal modes(8์ง„์ˆ˜ ๋ชจ๋“œ) ์กด์žฌ
    • ex. chmod 111 perm.txt ํ•˜๋ฉด user, group, other์˜ ๊ถŒํ•œ์ด ๋ชจ๋‘ ์“ฐ๊ธฐ๋งŒ ๊ฐ€๋Šฅ
  • class๋ฅผ ์ด์šฉํ•œ ๋ฐฉ๋ฒ•
    • ex. chmod a+r perm.txt : ๋ชจ๋“  ํด๋ž˜์Šค์˜ ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์ฝ๊ธฐ ๊ถŒํ•œ ์ฃผ๊ธฐ
  • operation์„ ์ด์šฉํ•œ ๋ฐฉ๋ฒ•
    • ex. chmod a=rwx perm.txt : ๋ชจ๋“  ์‚ฌ์šฉ์ž์— ๋Œ€ํ•ด์„œ rwx๊ถŒํ•œ์„ ๋ชจ๋‘ ์ฃผ๊ฒ ๋‹ค.
    • ๋งŒ์•ฝ chmod a= perm.txt ํ•˜๋ฉด ๋ชจ๋“  ๊ถŒํ•œ ์‚ญ์ œ๋จ

๐ŸŒผ group

  • ํŒŒ์ผ๊ณผ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๋“ค์ด ๊ณต๋™์œผ๋กœ ๊ด€๋ฆฌ

๐Ÿ“˜ groupadd

  • groupadd developer : developer๋ผ๋Š” ๊ทธ๋ฃน๋ช…์œผ๋กœ ๊ทธ๋ฃน๋งŒ๋“ค๊ธฐ
    • ์ผ๋ฐ˜์‚ฌ์šฉ์ž๋Š” ์‚ฌ์šฉ ๋ถˆ๊ฐ€
    • sudo groupadd developer
    • sudo !! ์—์„œ !! ์€ ๋ฐ”๋กœ์ „์— ์‚ฌ์šฉํ–ˆ๋˜ ๋ช…๋ น์–ด๋ฅผ ์˜๋ฏธ
  • ๊ทธ๋ฃน ๋งŒ๋“ค์–ด์กŒ๋Š”์ง€ ํ™•์ธ
    • nano /etc/group ์— ๋“ค์–ด๊ฐ€๋ณด๋ฉด ํ™•์ธ ๊ฐ€๋Šฅ
    • /etc/group : group์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ํŒŒ์ผ
  • ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋ฅผ ๊ทธ๋ฃน ๋ฉค๋ฒ„๋กœ ๋งŒ๋“ค๊ธฐ
    • sudo usermod -a -G developer dailycode
    • usermod : ์‚ฌ์šฉ์ž ๊ณ„์ • ์ˆ˜์ •ํ•˜๋Š” ๋ช…๋ น์–ด
    • -a : ๊ธฐ์กด์˜ ๊ทธ๋ฃน ์œ ์ง€ํ•˜๋ฉด์„œ ์ƒˆ๋กœ์šด ๊ทธ๋ฃน ์ถ”๊ฐ€(์ถ”๊ฐ€ํ•œ๋‹ค)
    • -G : ์‚ฌ์šฉ์ž๋ฅผ ํ•˜๋‚˜ ์ด์ƒ์˜ ๊ทธ๋ฃน์— ์ถ”๊ฐ€ํ•  ๋•Œ ์‚ฌ์šฉ(๊ทธ๋ฃน์—)
    • dailycode : ์‚ฌ์šฉ์ž ๊ณ„์ • ์ด๋ฆ„(์–ด๋–ค ์‚ฌ์šฉ์ž)
      => dailycode๋ผ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ developer๋ผ๋Š” ๊ทธ๋ฃน์— ์ถ”๊ฐ€๋จ

  • group์„ root์—์„œ developer๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ• (๋ฐ”๊พธ๋ฉด ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ๋Š” ๊ทธ๋ฃน์ด ์†Œ์œ ํ•˜๊ฒŒ๋จ)
    • sudo chown root:developer .
    • chown(change owner) : ํŒŒ์ผ ๋˜๋Š” ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ์ž ๋ณ€๊ฒฝ
    • root:developer : root๋ฅผ developer๋กœ ๋ณ€๊ฒฝํ•˜๊ฒ ๋‹ค
    • . : ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ
      => ํ˜„์žฌ ๋””๋ ‰ํ† ๋ฆฌ์˜ ์†Œ์œ ์ž๋ฅผ root์—์„œ developer๋กœ ๋ณ€๊ฒฝํ•˜๊ฒ ๋‹ค.

profile
Study Log ๐Ÿ“‚

0๊ฐœ์˜ ๋Œ“๊ธ€