[Linux] νμΌ κΆνκ³Ό μ°κΈ° μμ
μλ³Έ κ²μκΈ: https://velog.io/@euisuk-chung/Linux-νμΌ-κΆνκ³Ό-μ°κΈ°-μμ
Linux νμΌ κΆνκ³Ό μ°κΈ° μμ
리λ
μ€ μμ€ν
μμ νμΌ μμ
μ μννκΈ° μν΄μλ μ μ ν κΆνμ΄ νμν©λλ€. μ¬μ©μλ νμΌμ΄λ λλ ν 리μ λν΄ μ½κΈ°(read
), μ°κΈ°(write
), μ€ν(execute
) κΆνμ κ°μ§ μ μμΌλ©°, μ΄ κΆνλ€μ νμΌ μμ μ(owner
), κ·Έλ£Ή(group)
, κ·Έλ¦¬κ³ κΈ°ν μ¬μ©μ(others
)μκ² λ€λ₯΄κ² μ€μ λ μ μμ΅λλ€.
κΆν νμΈνκΈ° (ls -l
)
νμΌμ΄λ λλ ν 리μ κΆνμ νμΈνκΈ° μν΄ ls -l
λͺ
λ Ήμ΄λ₯Ό μ¬μ©ν©λλ€.
μμ
1
ls -l /path/to/directory
μΆλ ₯:
1
drwxr-xr-x 2 user group 4096 Jan 25 10:00 directory
μ΄ μΆλ ₯μμ 첫 λ²μ§Έ λ¬Έμ d
λ λλ ν 리μμ λνλ
λλ€. κ·Έ λ€μ λμ€λ rwxr-xr-x
λ κΆνμ λνλ΄λ©°, μμλλ‘ μμ μ, κ·Έλ£Ή, κΈ°ν μ¬μ©μμ κΆνμ μλ―Έν©λλ€.
κΆν λ³κ²½νκΈ° (chmod
)
chmod
λͺ
λ Ήμ΄λ νμΌμ΄λ λλ ν 리μ κΆνμ λ³κ²½νλ λ° μ¬μ©λ©λλ€.
μμ
1
chmod 755 /path/to/file
μ΄ λͺ λ Ήμ μμ μμκ² μ½κΈ°, μ°κΈ°, μ€ν κΆνμ μ£Όκ³ , κ·Έλ£Ήκ³Ό κΈ°ν μ¬μ©μμκ²λ μ½κΈ°μ μ€ν κΆνλ§ λΆμ¬ν©λλ€.
μμ μ λ³κ²½νκΈ° (chown
)
chown
λͺ
λ Ήμ΄λ νμΌμ΄λ λλ ν 리μ μμ μλ κ·Έλ£Ήμ λ³κ²½ν©λλ€.
μμ
1
chown user:group /path/to/file
μ΄ λͺ
λ Ήμ /path/to/file
μ μμ μλ₯Ό user
λ‘, κ·Έλ£Ήμ group
μΌλ‘ λ³κ²½ν©λλ€.
νμΌ μ°κΈ°
νμΌμ μ°κΈ° μμ
μ μννκΈ° μν΄μλ μ°κΈ° κΆνμ΄ νμν©λλ€. echo
μ 리λλ μ
(>
)μ μ¬μ©νμ¬ νμΌμ ν
μ€νΈλ₯Ό μΈ μ μμ΅λλ€.
μμ
1
echo "Hello, World!" > /path/to/file
μ΄ λͺ
λ Ήμ βHello, World!βλΌλ λ¬Έμμ΄μ /path/to/file
μ μ°κ² λ©λλ€. λ§μ½ ν΄λΉ νμΌμ΄ μ‘΄μ¬νμ§ μμΌλ©΄ μλ‘ μμ±λ©λλ€.
κΆν μ€λ₯ ν΄κ²°νκΈ°
κΆν μ€λ₯κ° λ°μνμ λλ chmod
λλ chown
μ μ¬μ©νμ¬ ν΄κ²°ν μ μμ΅λλ€.
μμ
1
chmod 644 /path/to/file
μ΄ λͺ λ Ήμ μμ μμκ² μ½κΈ°μ μ°κΈ° κΆνμ, κ·Έλ£Ήκ³Ό κΈ°ν μ¬μ©μμκ²λ μ½κΈ° κΆνλ§ λΆμ¬ν©λλ€.
리λ μ€ νμΌ κΆν μ΄ν΄ λ° μ€μ μμ
리λ μ€ μμ€ν μμ νμΌκ³Ό λλ ν 리λ νΉμ κΆν μ€μ μ ν΅ν΄ κ΄λ¦¬λ©λλ€. κ° νμΌ λλ λλ ν 리μλ μΈ κ°μ§ μ νμ μ¬μ©μκ° κ°κΈ° λ€λ₯Έ κΆνμ κ°μ§ μ μμ΅λλ€: μμ μ(owner), κ·Έλ£Ή(group), κ·Έλ¦¬κ³ κΈ°ν(other) μ¬μ©μλ€μ λλ€.
κΆνμ μ’ λ₯
- μ½κΈ°(Read, r): νμΌμ λ΄μ©μ μ½μ μ μλ κΆνμ΄λ λλ ν 리 λ΄μ νμΌ λͺ©λ‘μ λ³Ό μ μλ κΆν
- μ°κΈ°(Write, w): νμΌμ λ΄μ©μ λ³κ²½νκ±°λ μμ ν μ μλ κΆνμ΄λ λλ ν 리 λ΄μ νμΌμ μμ±νκ±°λ μμ ν μ μλ κΆν
- μ€ν(Execute, x): νμΌμ νλ‘κ·Έλ¨μΌλ‘μ μ€νν μ μλ κΆνμ΄λ λλ ν 리μ μ κ·Όνμ¬ κ·Έ λ΄μ©μ νμν μ μλ κΆν
κΆν μ€μ (chmod
λͺ
λ Ήμ΄)
chmod
λͺ
λ Ήμ΄λ νμΌμ΄λ λλ ν 리μ κΆνμ μ€μ νλ λ° μ¬μ©λ©λλ€. κΆνμ μ«μ νΉμ λ¬Έμλ‘ ννν μ μμ΅λλ€.
μ«μλ‘ κΆν μ€μ νκΈ°
κ° κΆνμ λ€μκ³Ό κ°μ μ«μλ‘ ννλ©λλ€:
- μ½κΈ°: 4
- μ°κΈ°: 2
- μ€ν: 1
μΈ κ°μ§ μ νμ μ¬μ©μμ λν κΆνμ ν©μ°νμ¬ ννν©λλ€.
μμ
chmod 700
: μμ μμκ² λͺ¨λ κΆνμ μ£Όκ³ , κ·Έλ£Ήκ³Ό κΈ°ν μ¬μ©μμκ²λ κΆνμ μ£Όμ§ μμ.chmod 770
: μμ μμ κ·Έλ£Ήμκ² λͺ¨λ κΆνμ μ£Όκ³ , κΈ°ν μ¬μ©μμκ²λ κΆνμ μ£Όμ§ μμ.chmod 777
: λͺ¨λ μ¬μ©μμκ² λͺ¨λ κΆνμ μ€.
λ¬Έμλ‘ κΆν μ€μ νκΈ°
λ¬Έμλ₯Ό μ¬μ©νμ¬ κΆνμ μ€μ ν μλ μμ΅λλ€:
u
: user(μμ μ)g
: group(κ·Έλ£Ή)o
: others(κΈ°ν μ¬μ©μ)a
: all(λͺ¨λ μ¬μ©μ)
μμ
chmod u=rwx,g=rx,o=rx
: μμ μλ λͺ¨λ κΆν, κ·Έλ£Ήκ³Ό κΈ°ν μ¬μ©μλ μ½κΈ°μ μ€ν κΆνλ§ λΆμ¬.chmod u+w
: νμ¬ μ€μ μ μμ μμ μ°κΈ° κΆνλ§ μΆκ°.
νμ λλ ν 리(nested directory)μ κΆν μ€μ
νμ λλ ν 리(μ: nested
λλ ν 리)μ λν΄ νΉμ κΆνμ μ€μ ν λλ chmod
λͺ
λ Ήμ΄μ -R
μ΅μ
μ μ¬μ©νμ¬ νμ νμΌκ³Ό λλ ν 리μ λμΌν κΆνμ μ μ©ν μ μμ΅λλ€.
μμ
1
chmod -R 755 /path/to/nested_directory
μ΄ λͺ
λ Ήμ nested_directory
μ κ·Έ μμ λͺ¨λ νμΌκ³Ό νμ λλ ν 리μ λν΄ μμ μμκ² λͺ¨λ κΆνμ λΆμ¬νκ³ , κ·Έλ£Ήκ³Ό κΈ°ν μ¬μ©μμκ²λ μ½κΈ° λ° μ€ν κΆνλ§ λΆμ¬ν©λλ€.
μ΄λ κ² μ€μ νλ©΄ nested_directory
λ΄μ νμΌμ΄λ λλ ν 리μλ λμΌν κΆνμ΄ μ μ©λμ΄, μΌμΌμ΄ κΆνμ μ€μ ν νμ μμ΄ κ°νΈνκ² κ΄λ¦¬ν μ μμ΅λλ€.
κΆν μ€μ μ μ£Όμ μ¬ν
- 보μ: λͺ¨λ μ¬μ©μμκ² μ€ν κΆνμ λΆμ¬νλ
chmod 777
μ€μ μ νΈλ¦¬ν μ μμ§λ§ 보μμ μ·¨μ½ν΄μ§ μ μμ΅λλ€. νΉν, λ―Όκ°ν μ λ³΄κ° ν¬ν¨λ νμΌμ΄λ μ€μν μμ€ν νμΌμ κ²½μ°μλ μ£Όμκ° νμν©λλ€. - μ ν¨μ± κ²μ¬: λλ ν 리μ κΆνμ μ€μ ν λλ νΉμ νμΌμ΄λ νμ λλ ν 리μλ§ μμΈμ μΌλ‘ λ€λ₯Έ κΆνμ μ£Όκ³ μ νλ€λ©΄,
chmod -R
μ΅μ μ μ¬μ©ν λ μ μνμ¬μΌ ν©λλ€.
μ΄μ κ°μ νμΌ κΆν λ° μ°κΈ° μμ μ λν μ΄ν΄μ μ€μ΅μ ν΅ν΄ 리λ μ€ μμ€ν μμμ νμΌ κ΄λ¦¬κ° λ³΄λ€ μ¬μμ§ κ²μ λλ€. κ° νμΌκ³Ό λλ ν 리μ κΆνμ μ μ ν μ€μ νλ κ²μ μμ€ν μ μμ μ±κ³Ό 보μμ μ§ν€λ λ° λ§€μ° μ€μν©λλ€.