๐งฉ chmod (change mode) ๋ช ๋ น์ด
chmod๋ ํ์ผ ๋๋ ๋๋ ํ ๋ฆฌ์ ์ ๊ทผ ๊ถํ(permission) ์ ๋ณ๊ฒฝํ๋ ๋ช ๋ น์ด๋ค.
‘change mode’์ ์ฝ์๋ก, ํ์ผ์ ์ฝ๊ธฐ(r), ์ฐ๊ธฐ(w), ์คํ(x) ๊ถํ์
์ฌ์ฉ์(user), ๊ทธ๋ฃน(group), ๊ทธ ์ธ ์ฌ์ฉ์(others) ๋ณ๋ก ๊ฐ๊ฐ ์ง์ ํ ์ ์๋ค.
๐ง 1๏ธโฃ ๊ธฐ๋ณธ ๊ฐ๋
| user (u) | ํ์ผ์ ์์ ์ |
| group (g) | ํ์ผ์ด ์ํ ๊ทธ๋ฃน ๊ตฌ์ฑ์ |
| others (o) | ๊ทธ ์ธ์ ๋ชจ๋ ์ฌ์ฉ์ |
| mode (๋ชจ๋) | ๊ฐ ๊ถํ(r, w, x) ์กฐํฉ ๊ฐ์ผ๋ก, ํ์ผ ์ ๊ทผ ๊ถํ ์ํ๋ฅผ ๋ปํจ |
์ฆ, “ํ์ผ์ mode๋ฅผ ๋ณ๊ฒฝํ๋ค”๋ ๊ฒ์ ๊ณง “ํ์ผ์ ์ ๊ทผ ๊ถํ์ ๋ณ๊ฒฝํ๋ค”๋ ๋ป์ด๋ค.
โ๏ธ 2๏ธโฃ ์ฌ์ฉ ํ์
chmod [OPTION] [MODE] [FILE]
๐ธ ์ต์ (OPTION)
| -v | ๊ถํ์ด ๋ณ๊ฒฝ๋๋ ํ์ผ์ ๋ํด ์ง๋จ ๋ฉ์์ง ์ถ๋ ฅ |
| -c | ๋ณ๊ฒฝ์ด ๋ฐ์ํ ๊ฒฝ์ฐ์๋ง ๋ฉ์์ง ์ถ๋ ฅ |
| -f | ์๋ฌ ๋ฉ์์ง๋ฅผ ํ์ํ์ง ์์ (๊ฐ์ ์ ์ฉ) |
| -R | ์ง์ ํ ๋ชจ๋๋ฅผ ํ์ผ๊ณผ ๋๋ ํ ๋ฆฌ์ ๋ํด ํ์ ๋๋ ํฐ๋ฆฌ๊น์ง ์ฌ๊ท์ ์ผ๋ก(recursively) ์ ์ฉ |
๐ธ ๋ชจ๋(MODE)
ํ์ผ์ ์ ์ฉํ ๋ชจ๋(mode) ๋ฌธ์์ด ์กฐํฉ
| u, g, o, a | ์ฌ์ฉ์(user), ๊ทธ๋ฃน(group), ๊ธฐํ ์ฌ์ฉ์(others), ์ ์ฒด(all) |
| +, -, = | ํ์ฌ ๋ชจ๋์ ๊ถํ ์ถ๊ฐ(+), ํ์ฌ ๋ชจ๋์์ ๊ถํ ์ ๊ฑฐ(-), ํ์ฌ ๋ชจ๋๋ก ๊ถํ ์ค์ /์ง์ (=) |
| r, w, x | ์ฝ๊ธฐ(read), ์ฐ๊ธฐ(write), ์คํ(execute) ๊ถํ |
| X | ๋๋ ํฐ๋ฆฌ // ์ด๋ฏธ ์คํ ๊ถํ(x)์ด ์๋ ํ์ผ ์๋ง ์คํ ๊ถํ ๋ถ์ฌ |
| s | SetUID / SetGID (์คํ ์ ํ์ผ ์์ ์ ๋๋ ๊ทธ๋ฃน ID๋ก ์คํ) |
| t | Sticky bit (๊ณต์ ๋๋ ํฐ๋ฆฌ์์ ํ์ธ ํ์ผ ์ญ์ ์ ํ) |
| 0~7 | 8์ง์๋ก ๊ถํ์ ํํ (์ซ์ ๋ชจ๋) |
๐งฉ 3๏ธโฃ ๊ธฐํธ ๋ชจ๋(Symbolic Mode) ์์
| chmod g+r FILE | ๊ทธ๋ฃน์ ์ฝ๊ธฐ ๊ถํ ์ถ๊ฐ |
| chmod go-wx FILE | ๊ทธ๋ฃน ๋ฐ ๊ธฐํ ์ฌ์ฉ์์์ ์ฐ๊ธฐ, ์คํ ๊ถํ ์ ๊ฑฐ |
| chmod a=x FILE | ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ์คํ๋ง ๊ฐ๋ฅํ๋๋ก ์ค์ |
| chmod u=rwx,go= FILE | ์์ ์๋ ๋ชจ๋ ๊ถํ, ๊ทธ๋ฃน/๊ธฐํ๋ ๊ถํ ์์ |
๐ ์์
$ ls -l file.txt
-rw-r--r-- 1 user user 0 Oct 21 12:00 file.txt
$ chmod a+x file.txt
$ ls -l file.txt
-rwxr-xr-x 1 user user 0 Oct 21 12:01 file.txt
๐ข 4๏ธโฃ 8์ง์(์ซ์) ๋ชจ๋ (Octal Mode)
์ ๋ช ๋ น์ด๋ ๋ชจ๋ '๊ธฐํธ ๋ชจ๋'๋ก ๋ชจ๋๋ฅผ ๋ณ๊ฒฝํ๋ ๋ฐฉ์์ด๊ณ ,
๊ฐ ๊ถํ์ 8์ง์ ์ซ์๋ก ํํํ์ฌ ํ ๋ฒ์ ์ง์ ํ ์ ์๋ค.
๊ถํ์ ํฉ๊ณ๋ฅผ ํตํด ์ซ์๋ฅผ ๊ณ์ฐํ๋ค.
๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ฝ๊ณ ์ฐ๊ณ ์คํํ ์ ์๋๋ก ์ง์ $ chmod 000 FILE ๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ฝ๊ณ ์ฐ๊ณ ์คํํ ์ ์๋ ๊ถํ ์ง์ $ chmod 777 FILE ์์ ์๋ ๋ชจ๋ ๊ถํ, ๊ทธ๋ฃน ๋ฐ ๊ทธ ์ธ ์ฌ์ฉ์๋
์ฝ๊ธฐ์ ์คํ๋ง ๊ฐ๋ฅ$ chmod 755 FILE
| ๊ถํ | ๊ฐ |
| ์ฝ๊ธฐ(r) | 4 |
| ์ฐ๊ธฐ(w) | 2 |
| ์คํ(x) | 1 |
๊ฐ ์ฌ์ฉ์(u/g/o)์ ๋ํด ์ด ๊ฐ์ ๋ํ ๊ฒฐ๊ณผ๋ฅผ ํ ์๋ฆฌ๋ก ํํํ๋ค.
| ์ฌ์ฉ์ | ์์ | ๊ถํ | ๊ณ์ฐ ๊ฒฐ๊ณผ |
| user | rwx | 4+2+1 | 7 |
| group | r-x | 4+0+1 | 5 |
| others | r-x | 4+0+1 | 5 |
๐ ๋ฐ๋ผ์ chmod 755 FILE = rwxr-xr-x
๐ ์ซ์ ๋ชจ๋ ์์
| ๋ช ๋ น์ด | ์ค๋ช |
| chmod 000 FILE | ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ๊ถํ ์์ (----------) |
| chmod 777 FILE | ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ๋ชจ๋ ๊ถํ (rwxrwxrwx) |
| chmod 755 FILE | ์ฌ์ฉ์: ๋ชจ๋ ๊ถํ / ๊ทธ๋ฃน·๊ธฐํ: ์ฝ๊ธฐ+์คํ (rwxr-xr-x) |
| chmod 644 FILE | ์ฌ์ฉ์: ์ฝ๊ธฐ·์ฐ๊ธฐ / ๊ทธ๋ฃน·๊ธฐํ: ์ฝ๊ธฐ๋ง (rw-r--r--) |
๐ ์คํ ์์
$ chmod 755 run.sh
$ ls -l run.sh
-rwxr-xr-x 1 user user 42 Oct 21 15:00 run.sh
๐ 5๏ธโฃ ๊ถํ ํ์ธ
$ ls -l [ํ์ผ๋ช
]
์ถ๋ ฅ ํ์:
-rwxr-xr--
โ โ โ โ โ
โ โ โ โ โโ others ๊ถํ
โ โ โ โโโ group ๊ถํ
โ โ โโโโโ user ๊ถํ
โ โโโโโโโ ํ์ผ ํ์
(-=์ผ๋ฐํ์ผ, d=๋๋ ํ ๋ฆฌ)
โโโโโโโโโ ๊ธฐํ ์ ๋ณด
์:
drwxr-xr-x 2 user user 4096 Oct 21 15:10 mydir
d : ๋๋ ํ ๋ฆฌ
rwxr-xr-x : ์์ ์๋ ๋ชจ๋ ๊ถํ, ๊ทธ๋ฃน/๊ธฐํ๋ ์ฝ๊ธฐ+์คํ
โ๏ธ 6๏ธโฃ ์ฌ๊ท์ ์ ์ฉ
๋๋ ํฐ๋ฆฌ ๋ฐ ํ์ ํญ๋ชฉ ์ ์ฒด์ ๊ถํ์ ์ผ๊ด ๋ณ๊ฒฝํ๋ ค๋ฉด -R ์ต์ ์ ์ฌ์ฉํ๋ค.
๐ ์์
$ chmod -R 755 /home/user/project
๐ง 7๏ธโฃ ํน์ ๋นํธ ์ค๋ช (s, t)
| ๊ธฐํธ | ์ด๋ฆ | ์ค๋ช |
| s | SetUID / SetGID | ์คํ ์ ํ์ผ ์์ ์ ๋๋ ๊ทธ๋ฃน ๊ถํ์ผ๋ก ์คํ๋จ |
| t | Sticky bit | ๊ณต์ ๋๋ ํฐ๋ฆฌ์์ ํ์ผ ์์ ์๋ง ์ญ์ ๊ฐ๋ฅ (์: /tmp) |
๐ ์์
$ chmod 1777 /tmp
→ ๋ชจ๋ ์ฌ์ฉ์ ์ฐ๊ธฐ ๊ฐ๋ฅํ์ง๋ง, ์๊ธฐ ํ์ผ๋ง ์ญ์ ๊ฐ๋ฅ
โ ์์ฝ ์ ๋ฆฌ
| ๊ตฌ๋ถ | ์ค๋ช | ์์ |
| ๋ช ๋ น ํ์ | chmod [์ต์ ] [๋ชจ๋] [ํ์ผ] | chmod 755 file.sh |
| ์ต์ | -R(์ฌ๊ท), -v(์ง๋จ), -c(๋ณ๊ฒฝ๋ง), -f(๋ฌด์) | |
| ๊ธฐํธ ๋ชจ๋ | u,g,o,a + +,-,= + r,w,x | chmod g+r file |
| ์ซ์ ๋ชจ๋ | 4(r)+2(w)+1(x) → ํฉ๊ณ๋ก ํํ | chmod 644 file |
| ๊ถํ ํ์ธ | ls -l | -rwxr-xr-x |
| ํน์๋นํธ | s (SetUID/GID), t (Sticky) | chmod 4755 file, chmod 1777 /tmp |
โ ํ ์ค ์์ฝ
chmod๋ ํ์ผ์ด๋ ๋๋ ํฐ๋ฆฌ์ ์ฝ๊ธฐ·์ฐ๊ธฐ·์คํ ๊ถํ(mode) ์
์ฌ์ฉ์(u), ๊ทธ๋ฃน(g), ๊ธฐํ(o) ๋จ์๋ก ์ ์ดํ๋ ๋ช ๋ น์ด๋ค.
๊ธฐํธ(u+rwx)๋ ์ซ์(755)๋ก ์ง์ ํ๋ฉฐ, ls -l๋ก ๊ฒฐ๊ณผ๋ฅผ ํ์ธํ ์ ์๋ค.
๐งฉ ํ์ผ ๊ถํ ๋ฌธ์์ด ํด์ (ls -l ๊ฒฐ๊ณผ ๋ถ์)
ls -l ๋ช ๋ น์ ์ ๋ ฅํ๋ฉด ํ์ผ์ ์์ ์, ๊ทธ๋ฃน, ํฌ๊ธฐ, ๋ ์ง, ์ด๋ฆ๊ณผ ํจ๊ป
๋งจ ์์ drwxr-xr-x ๊ฐ์ ๊ถํ ๋ฌธ์์ด(permission string) ์ด ํ์๋ฉ๋๋ค.
์ด ๋ฌธ์์ด์ ํ์ผ์ ํ์ + ๊ถํ ๋นํธ(9๊ฐ) ๋ก ๊ตฌ์ฑ๋์ด ์์ด์.
๐ง 1๏ธโฃ ๊ธฐ๋ณธ ๊ตฌ์กฐ
drwxr-xr-x
โโโโโโโโโโโโโโโโโ 9๊ฐ์ ๊ถํ ๋นํธ (rwxr-xr-x)
โโโโโโโโโโโโโโโโโ ํ์ผ ํ์
๋นํธ
| ๊ตฌ๋ถ | ์ค๋ช | ์์ |
| 1๋ฒ์งธ ๋ฌธ์ | ํ์ผ์ ํ์ (type) | -(์ผ๋ฐ ํ์ผ), d(๋๋ ํฐ๋ฆฌ), l(๋งํฌ) ๋ฑ |
| 2~4๋ฒ์งธ ๋ฌธ์ | ์์ ์(user) ๊ถํ | rwx |
| 5~7๋ฒ์งธ ๋ฌธ์ | ๊ทธ๋ฃน(group) ๊ถํ | r-x |
| 8~10๋ฒ์งธ ๋ฌธ์ | ๊ธฐํ ์ฌ์ฉ์(others) ๊ถํ | r-x |
๐งฉ 2๏ธโฃ ํ์ผ ํ์ ๋นํธ (์ฒซ ๋ฒ์งธ ๋ฌธ์)
| ๊ธฐํธ | ์๋ฏธ | ์ค๋ช |
| - | ์ผ๋ฐ ํ์ผ | ํ ์คํธ, ์คํ ํ์ผ ๋ฑ |
| d | ๋๋ ํฐ๋ฆฌ | ํด๋ |
| l | ์ฌ๋ณผ๋ฆญ ๋งํฌ | ๋ค๋ฅธ ํ์ผ์ ๊ฐ๋ฆฌํด |
| b | ๋ธ๋ก ๋๋ฐ์ด์ค | ํ๋๋์คํฌ, USB ๊ฐ์ ๋ธ๋ก ์ฅ์น |
| c | ๋ฌธ์ ๋๋ฐ์ด์ค | ํฐ๋ฏธ๋, ํค๋ณด๋, ๋ง์ฐ์ค ๋ฑ |
| p | ํ์ดํ | ํ๋ก์ธ์ค ๊ฐ ํต์ ์ฉ |
| s | ์์ผ | ๋คํธ์ํฌ ํต์ ์ฉ |
๐ ์์
$ ls -l
drwxr-xr-x 2 user user 4096 Oct 21 dir1/ # ๋๋ ํฐ๋ฆฌ
-rw-r--r-- 1 user user 512 Oct 21 file.txt # ์ผ๋ฐ ํ์ผ
lrwxrwxrwx 1 user user 10 Oct 21 link -> file.txt # ์ฌ๋ณผ๋ฆญ ๋งํฌ
โ๏ธ 3๏ธโฃ ๊ถํ ๋นํธ (rwxr-xr-x)
๊ฐ ๊ถํ์ ์ฝ๊ธฐ(read), ์ฐ๊ธฐ(write), ์คํ(execute) ์ ์๋ฏธํ๋ฉฐ,
3๋นํธ์ฉ 3์ธํธ๋ก ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
rwxr-xr-x
โโโ โโโ โโโ
โโโ โโโ โโโโ others (๊ธฐํ ์ฌ์ฉ์)
โโโ โโโ โโโโ group (๊ทธ๋ฃน)
โโโ โโโโโโโโโ user (์์ ์)
โโโโโโโโโโโโโ ๊ฐ ์ธํธ๋ rwx (์ฝ๊ธฐ/์ฐ๊ธฐ/์คํ)
| ๊ธฐํธ | ๋นํธ ๊ฐ | ์๋ฏธ |
| r | 4 | ์ฝ๊ธฐ(Read) ๊ถํ |
| w | 2 | ์ฐ๊ธฐ(Write) ๊ถํ |
| x | 1 | ์คํ(Execute) ๊ถํ |
| - | 0 | ๊ถํ ์์ |
๐ ๊ณ์ฐ ์์
| ๊ถํ ๋ฌธ์์ด | 8์ง์ ํํ | ์๋ฏธ |
| rwxr-xr-x | 755 | ์์ ์: rwx(7), ๊ทธ๋ฃน: r-x(5), ๊ธฐํ: r-x(5) |
| rw-r--r-- | 644 | ์์ ์: rw-(6), ๊ทธ๋ฃน: r--(4), ๊ธฐํ: r--(4) |
| rwx------ | 700 | ์์ ์๋ง ๋ชจ๋ ๊ถํ |
| rwxrwxrwx | 777 | ๋ชจ๋ ์ฌ์ฉ์ ๋ชจ๋ ๊ถํ |
๐ 4๏ธโฃ ๊ถํ ๋ฌธ์์ด ์๊ฐํ
ํ์ผ๋ช
: script.sh
๊ถํ: -rwxr-xr--
๋ฌธ์ ์์น: 1 234 567 890
๊ตฌ์กฐ: - rwx r-x r--
๊ตฌ๋ถ: โ โ โ โโโ others (๊ธฐํ ์ฌ์ฉ์)
โ โ โโโโโโโ group (๊ทธ๋ฃน)
โ โโโโโโโโโโโ user (์์ ์)
โโโโโโโโโโโโโ ํ์ผ ํ์
๐งฉ 5๏ธโฃ ํน์ ๊ถํ ๋นํธ (Special Permission Bits)
| ํน์ ๋นํธ | ๊ธฐํธ | ์ค๋ช | ์ฌ์ฉ ์์น |
| SetUID | s | ์คํ ์ ํด๋น ํ์ผ์ ์์ ์ ๊ถํ์ผ๋ก ์คํ | user ์์ญ์ x ์์น |
| SetGID | s | ์คํ ์ ํด๋น ํ์ผ์ ๊ทธ๋ฃน ๊ถํ์ผ๋ก ์คํ | group ์์ญ์ x ์์น |
| Sticky bit | t | ๋๋ ํฐ๋ฆฌ ๋ด ํ์ผ์ ์์ ์๋ง ์ญ์ ๊ฐ๋ฅ | others ์์ญ์ x ์์น |
๐ ์์
| ๋ช ๋ น์ด | ๊ฒฐ๊ณผ | ๊ถํ ์๋ฏธ |
| chmod 4755 file | -rwsr-xr-x | SetUID ์ค์ (์์ ์ ๊ถํ์ผ๋ก ์คํ๋จ) |
| chmod 2755 dir | drwxr-sr-x | SetGID ์ค์ (๊ทธ๋ฃน ์์) |
| chmod 1777 /tmp | drwxrwxrwt | Sticky bit ์ค์ (๊ณต์ ๋๋ ํฐ๋ฆฌ ๋ณด์) |
๐ ํน์ ๋นํธ ์๊ฐํ ์์
| ๋นํธ | ์๋ฏธ | |
| SetUID | rwsr-xr-x → user ์์ญ์ x๊ฐ s๋ก ํ์ | |
| SetGID | rwxr-sr-x → group ์์ญ์ x๊ฐ s๋ก ํ์ | |
| Sticky bit | rwxrwxrwt → others ์์ญ์ x๊ฐ t๋ก ํ์ |
๐ง 6๏ธโฃ ์ ๋ฆฌ ์์ฝํ
| ํ์ผ ํ์ | 1๋ฒ์งธ ๋ฌธ์ | d, -, l | ๋๋ ํฐ๋ฆฌ, ํ์ผ, ๋งํฌ ๊ตฌ๋ถ |
| ์์ ์ ๊ถํ | 2~4๋ฒ์งธ | rwx | ์ฝ๊ธฐ·์ฐ๊ธฐ·์คํ |
| ๊ทธ๋ฃน ๊ถํ | 5~7๋ฒ์งธ | r-x | ์ฝ๊ธฐ·์คํ |
| ๊ธฐํ ์ฌ์ฉ์ ๊ถํ | 8~10๋ฒ์งธ | r-x | ์ฝ๊ธฐ·์คํ |
| ํน์ ๋นํธ | s, t | rws, rwt | SetUID, SetGID, Sticky bit |
๐งฉ 7๏ธโฃ ์ข ํฉ ์์
๐ ํ์ผ ๋ชฉ๋ก
$ ls -l
drwxr-xr-x 2 user devteam 4096 Oct 21 project/
-rwxr-xr-- 1 user user 531 Oct 21 run.sh
-rw-r--r-- 1 user user 1250 Oct 21 notes.txt
-rwsr-xr-x 1 root root 2412 Oct 21 passwd_helper
drwxrwxrwt 3 root root 4096 Oct 21 /tmp
| project/ | drwxr-xr-x | ๋๋ ํฐ๋ฆฌ, ์์ ์: ๋ชจ๋ ๊ถํ, ๊ทธ๋ฃน/๊ธฐํ: ์ฝ๊ธฐ+์คํ |
| run.sh | -rwxr-xr-- | ์คํ ๊ฐ๋ฅํ ์คํฌ๋ฆฝํธ ํ์ผ |
| notes.txt | -rw-r--r-- | ์ผ๋ฐ ํ ์คํธ ํ์ผ (์ฝ๊ธฐ·์ฐ๊ธฐ) |
| passwd_helper | -rwsr-xr-x | SetUID ํ๋ก๊ทธ๋จ (root ๊ถํ์ผ๋ก ์คํ) |
| /tmp | drwxrwxrwt | Sticky bit ๋๋ ํฐ๋ฆฌ (๊ณต์ฉ ๊ณต๊ฐ) |
โ ํ ์ค ์์ฝ
ls -l์ drwxr-xr-x ๋ฌธ์์ด์
[ํ์ผํ์ 1์๋ฆฌ] + [์์ ์ 3์๋ฆฌ] + [๊ทธ๋ฃน 3์๋ฆฌ] + [๊ธฐํ 3์๋ฆฌ]๋ก ๊ตฌ์ฑ๋
10๋นํธ ๊ถํ ๊ตฌ์กฐ์ด๋ฉฐ, ํน์ ๋นํธ(s, t)๋ ์คํ ์์น์ ์ถ๊ฐ ํ์๋๋ค.
๐งฎ ํ์ผ ๊ถํ 8์ง์(octal) ํ
| 8์ง์ ๊ฐ | ์ด์ง์ | rwx ๋นํธ | ๋ฌธ์ ํํ ์๋ฏธ (๊ถํ) |
| 0 | 000 | --- | ์๋ฌด ๊ถํ ์์ |
| 1 | 001 | --x | ์คํ ๊ถํ๋ง |
| 2 | 010 | -w- | ์ฐ๊ธฐ ๊ถํ๋ง |
| 3 | 011 | -wx | ์ฐ๊ธฐ + ์คํ |
| 4 | 100 | r-- | ์ฝ๊ธฐ ๊ถํ๋ง |
| 5 | 101 | r-x | ์ฝ๊ธฐ + ์คํ |
| 6 | 110 | rw- | ์ฝ๊ธฐ + ์ฐ๊ธฐ |
| 7 | 111 | rwx | ์ฝ๊ธฐ + ์ฐ๊ธฐ + ์คํ (๋ชจ๋ ๊ถํ) |
๐งฉ 3์๋ฆฌ 8์ง์ ๊ถํ ์กฐํฉ ์์
| 000 | --------- | ์๋ฌด๋ ์ ๊ทผ ๋ถ๊ฐ |
| 600 | rw------- | ์์ ์๋ง ์ฝ๊ธฐ·์ฐ๊ธฐ |
| 644 | rw-r--r-- | ์ผ๋ฐ ํ ์คํธ ํ์ผ ๊ธฐ๋ณธ ๊ถํ |
| 700 | rwx------ | ์์ ์๋ง ๋ชจ๋ ๊ถํ |
| 755 | rwxr-xr-x | ์คํ ํ์ผ ๊ธฐ๋ณธ ๊ถํ |
| 775 | rwxrwxr-x | ๊ทธ๋ฃน๊น์ง ๋ชจ๋ ๊ถํ |
| 777 | rwxrwxrwx | ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ๋ชจ๋ ๊ถํ (โ ์ํ) |
| 664 | rw-rw-r-- | ์์ ์/๊ทธ๋ฃน ์ฝ๊ธฐ·์ฐ๊ธฐ |
| 711 | rwx--x--x | ์คํ๋ง ๊ฐ๋ฅ |
| 555 | r-xr-xr-x | ์ฝ๊ธฐ·์คํ๋ง ๊ฐ๋ฅ |
| 444 | r--r--r-- | ์ฝ๊ธฐ๋ง ๊ฐ๋ฅ |
๐งฎ ํน์ ๋นํธ ํฌํจ (SetUID / SetGID / Sticky bit)
ํ์ผ์ ํน์ ๊ถํ ๋นํธ๋ 4๋ฒ์งธ ์ซ์(์ผ์ชฝ)์ ์ถ๊ฐ๋ฉ๋๋ค.
| SetUID | 4 | ์คํ ์ ํ์ผ ์์ ์ ๊ถํ์ผ๋ก ์คํ | chmod 4755 file → -rwsr-xr-x |
| SetGID | 2 | ์คํ ์ ํ์ผ ๊ทธ๋ฃน ๊ถํ์ผ๋ก ์คํ | chmod 2755 dir → drwxr-sr-x |
| Sticky bit | 1 | ๋๋ ํฐ๋ฆฌ ๋ด ํ์ผ ์ญ์ ๋ฅผ ์์ ์๋ง ๊ฐ๋ฅ | chmod 1777 /tmp → drwxrwxrwt |
๐ ์กฐํฉ ์์
| 4755 | -rwsr-xr-x | SetUID + 755 |
| 2755 | drwxr-sr-x | SetGID + 755 |
| 1755 | drwxrwxr-t | Sticky + 755 |
| 7777 | rwsrwsrwt | ๋ชจ๋ ํน์๋นํธ + ์ ์ฒด ๊ถํ |