Π―ΠΊ ΠΏΠ΅ΡΠ΅Π²ΡΡΠΈΡΠΈ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΡ Π΄ΠΎ ΡΠ°ΠΉΠ»Ρ Π² Linux?
Linux – ΠΎΠ΄Π½Π° Π· Π½Π°ΠΉΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΡΠΉΠ½ΠΈΡ ΡΠΈΡΡΠ΅ΠΌ, Π½Π° ΡΠΊΡΠΉ ΠΏΡΠ°ΡΡΡΡΡ VPS-ΡΠ΅ΡΠ²Π΅ΡΠΈ, ΠΏΠ»Π°ΡΡΠΎΡΠΌΠΈ Π²Π΅Π±-Ρ ΠΎΡΡΠΈΠ½Π³Ρ ΡΠ° Π²ΡΡΡΡΠ°Π»ΡΠ½Ρ ΠΌΠ°ΡΠΈΠ½ΠΈ ΠΏΠΎ Π²ΡΡΠΎΠΌΡ ΡΠ²ΡΡΡ. Π ΠΎΡΠ½ΠΎΠ²Ρ Π±Π΅Π·ΠΏΠ΅ΠΊΠΈ Linux Π»Π΅ΠΆΠΈΡΡ ΡΠΈΡΡΠ΅ΠΌΠ° Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ² Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΠ°ΠΉΠ»ΡΠ² – ΠΏΡΠ°Π²ΠΈΠ»Π°, ΡΠΊΡ Π²ΠΈΠ·Π½Π°ΡΠ°ΡΡΡ, Ρ ΡΠΎ ΠΌΠΎΠΆΠ΅ ΡΠΈΡΠ°ΡΠΈ, Π·ΠΌΡΠ½ΡΠ²Π°ΡΠΈ Π°Π±ΠΎ Π²ΠΈΠΊΠΎΠ½ΡΠ²Π°ΡΠΈ ΡΠ°ΠΉΠ»ΠΈ. ΠΠ½Π°Π½Π½Ρ ΡΠΎΠ³ΠΎ, ΡΠΊ ΠΏΠ΅ΡΠ΅Π²ΡΡΡΡΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ Π² Linux, Π½Π΅ΠΎΠ±Ρ ΡΠ΄Π½Π΅ Π΄Π»Ρ ΠΊΠ΅ΡΡΠ²Π°Π½Π½Ρ VPS, Π½Π°Π»Π°ΡΡΡΠ²Π°Π½Π½Ρ Π±Π΅Π·ΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Ρ ΠΎΡΡΠΈΠ½Π³ΠΎΠ²ΠΎΠ³ΠΎ ΡΠ΅ΡΠ΅Π΄ΠΎΠ²ΠΈΡΠ° Π°Π±ΠΎ ΡΠΎΠ±ΠΎΡΠΈ Ρ Π²ΡΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΠΌΠ°ΡΠΈΠ½Ρ.
ΠΡΠ½ΠΎΠ²ΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ² Π½Π° ΡΠ°ΠΉΠ»ΠΈ
ΠΠΎΠΆΠ΅Π½ ΡΠ°ΠΉΠ» Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ Π² Linux ΠΌΠ°Ρ ΡΡΠΈ ΡΠΈΠΏΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²:
- Π§ΠΈΡΠ°Π½Π½Ρ (r) β ΠΏΠ΅ΡΠ΅Π³Π»ΡΠ΄ Π²ΠΌΡΡΡΡ ΡΠ°ΠΉΠ»Ρ Π°Π±ΠΎ ΡΠΏΠΈΡΠΊΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΡΠ².
- ΠΠ°ΠΏΠΈΡΡΠ²Π°ΡΠΈ (w) β Π·ΠΌΡΠ½ΡΠ²Π°ΡΠΈ Π°Π±ΠΎ Π²ΠΈΠ΄Π°Π»ΡΡΠΈ ΡΠ°ΠΉΠ», Π΄ΠΎΠ΄Π°Π²Π°ΡΠΈ Π°Π±ΠΎ Π²ΠΈΠ΄Π°Π»ΡΡΠΈ ΡΠ°ΠΉΠ»ΠΈ Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ·Ρ.
- ΠΠΈΠΊΠΎΠ½Π°ΡΠΈ (x) β Π·Π°ΠΏΡΡΡΠΈΡΠΈ ΡΠ°ΠΉΠ» (ΡΠΊΡΠΎ ΡΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠ°) Π°Π±ΠΎ ΡΠ²ΡΠΉΡΠΈ Π΄ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ.
Π ΡΡ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ Π·Π°ΡΡΠΎΡΠΎΠ²ΡΡΡΡΡΡ Π΄ΠΎ ΡΡΡΠΎΡ ΠΊΠ°ΡΠ΅Π³ΠΎΡΡΠΉ ΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΡΠ²:
- ΠΠ»Π°ΡΠ½ΠΈΠΊ (ΠΊΠΎΡΠΈΡΡΡΠ²Π°Ρ) β Π·Π°Π·Π²ΠΈΡΠ°ΠΉ ΡΠ²ΠΎΡΠ΅ΡΡ ΡΠ°ΠΉΠ»Ρ.
- ΠΡΡΠΏΠ° β ΠΊΠΎΡΠΈΡΡΡΠ²Π°ΡΡ, ΡΠΊΡ Π½Π°Π»Π΅ΠΆΠ°ΡΡ Π΄ΠΎ Π³ΡΡΠΏΠΈ, Π΄ΠΎ ΡΠΊΠΎΡ Π½Π°Π»Π΅ΠΆΠΈΡΡ ΡΠ°ΠΉΠ».
- ΠΠ½ΡΡ β Π²ΡΡ ΡΠ½ΡΡ.
ΠΠ΅ΡΠ΅Π²ΡΡΠΊΠ° ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΡ Π·Π° Π΄ΠΎΠΏΠΎΠΌΠΎΠ³ΠΎΡ ls -l
ΠΠ°ΠΉΠΏΡΠΎΡΡΡΡΠΈΠΉ ΡΠΏΠΎΡΡΠ± – ΡΠΊΠΎΡΠΈΡΡΠ°ΡΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΡ ls -l:
ΠΡΠΈΠΊΠ»Π°Π΄ Π²ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ:
- -rw-r–r– β Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ
- ΠΊΠΎΡΠΈΡΡΡΠ²Π°Ρ β Π²Π»Π°ΡΠ½ΠΈΠΊ
- Π³ΡΡΠΏΠ° β Π³ΡΡΠΏΠ°
- file.txt β ΡΠΌ’Ρ ΡΠ°ΠΉΠ»Ρ
Π’ΡΡ -rw-r–r– ΠΎΠ·Π½Π°ΡΠ°Ρ:
- ΠΠ»Π°ΡΠ½ΠΈΠΊ: ΡΠΈΡΠ°Π½Π½Ρ, Π·Π°ΠΏΠΈΡ
- ΠΡΡΠΏΠ°: ΡΠΈΡΠ°Π½Π½Ρ
- ΠΠ½ΡΡ: ΡΠΈΡΠ°ΡΠΈ
ΠΠ΅ΡΠ°Π»ΡΠ½Π° ΡΠ½ΡΠΎΡΠΌΠ°ΡΡΡ Π·Ρ ΡΡΠ°ΡΠΈΡΡΠΈΠΊΠΎΡ
ΠΠ»Ρ ΠΎΡΡΠΈΠΌΠ°Π½Π½Ρ Π±ΡΠ»ΡΡ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΡ ΡΠ½ΡΠΎΡΠΌΠ°ΡΡΡ Π²ΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅:
ΠΡΠΈΠΊΠ»Π°Π΄:
Π’Π΅ΠΏΠ΅Ρ Π²ΠΈ Π±Π°ΡΠΈΡΠ΅ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ Ρ Π΄Π²ΠΎΡ ΡΠΎΡΠΌΠ°Ρ : ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ (-rw-r–r–) ΡΠ° ΡΠΈΡΠ»ΠΎΠ²ΡΠΉ (0644).
Π ΠΎΠ·ΡΠΌΡΠ½Π½Ρ ΡΠΈΡΠ»ΠΎΠ²ΠΈΡ Π·Π½Π°ΡΠ΅Π½Ρ
ΠΠΎΠ·Π²ΠΎΠ»ΠΈ ΠΌΠΎΠΆΡΡΡ Π±ΡΡΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Ρ Π²ΠΈΠ³Π»ΡΠ΄Ρ ΡΠΈΡΠ΅Π»:
- Π§ΠΈΡΠ°Π½Π½Ρ = 4
- ΠΠ°ΠΏΠΈΡ = 2
- ΠΠΈΠΊΠΎΠ½Π°ΡΠΈ = 1
ΠΡ Π΄ΠΎΠ΄Π°Π²Π°Π½Π½Ρ Π΄Π°Ρ Π·Π½Π°ΡΠ΅Π½Π½Ρ Π΄ΠΎΠ·Π²ΠΎΠ»Ρ:
- rw- = 6
- r-x = 5
- rwx = 7
ΠΡΠΆΠ΅, 0644 = ΠΠ»Π°ΡΠ½ΠΈΠΊ: 6 (ΡΠΈΡΠ°Π½Π½Ρ/Π·Π°ΠΏΠΈΡ), ΠΡΡΠΏΠ°: 4 (ΡΠΈΡΠ°Π½Π½Ρ), ΠΠ½ΡΡ: 4 (ΡΠΈΡΠ°ΡΠΈ).
ΠΠΎΠ·Π²ΠΎΠ»ΠΈ Π΄Π»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΡΠ²
ΠΠ»Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΡΠ² ΠΏΡΠ°Π²ΠΈΠ»Π° Π΄Π΅ΡΠΎ ΡΠ½ΡΡ:
- r β ΠΏΠ΅ΡΠ΅Π»ΡΡΠΈΡΠΈ Π½Π°Π·Π²ΠΈ ΡΠ°ΠΉΠ»ΡΠ².
- w β ΡΡΠ²ΠΎΡΡΠ²Π°ΡΠΈ Π°Π±ΠΎ Π²ΠΈΠ΄Π°Π»ΡΡΠΈ ΡΠ°ΠΉΠ»ΠΈ (ΡΠΊΡΠΎ ΡΠ°ΠΊΠΎΠΆ Π·Π°Π΄Π°Π½ΠΎ x).
- x β ΡΠ²ΡΠΉΡΠΈ Π΄ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Ρ.
ΠΡΠΈΠΊΠ»Π°Π΄
Π’ΡΡ Π²Π»Π°ΡΠ½ΠΈΠΊ ΠΌΠ°Ρ ΠΏΠΎΠ²Π½Ρ ΠΏΡΠ°Π²Π°, Π³ΡΡΠΏΠ° ΠΌΠΎΠΆΠ΅ ΡΠΈΡΠ°ΡΠΈ/Π²Π²ΠΎΠ΄ΠΈΡΠΈ, Π° ΡΠ½ΡΡ Π½Π΅ ΠΌΠ°ΡΡΡ Π΄ΠΎΡΡΡΠΏΡ.
Π‘ΠΏΠ΅ΡΡΠ°Π»ΡΠ½Ρ Π±ΡΡΠΈ Π΄ΠΎΠ·Π²ΠΎΠ»ΡΠ²
Linux ΡΠ°ΠΊΠΎΠΆ ΠΏΡΠ΄ΡΡΠΈΠΌΡΡ ΡΠΎΠ·ΡΠΈΡΠ΅Π½Ρ Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ:
- setuid (s) β Π·Π°ΠΏΡΡΡΠΈΡΠΈ ΡΠ°ΠΉΠ» Π· ΠΏΡΠΈΠ²ΡΠ»Π΅ΡΠΌΠΈ Π²Π»Π°ΡΠ½ΠΈΠΊΠ°.
- setgid (s) β Π·Π°ΠΏΡΡΡΠΈΡΠΈ ΡΠ°ΠΉΠ» Π· ΠΏΡΠΈΠ²ΡΠ»Π΅ΡΠΌΠΈ Π³ΡΡΠΏΠΈ.
- sticky bit (t) β Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ Π»ΠΈΡΠ΅ Π²Π»Π°ΡΠ½ΠΈΠΊ ΡΠ°ΠΉΠ»Ρ ΠΌΠΎΠΆΠ΅ Π²ΠΈΠ΄Π°Π»ΡΡΠΈ ΡΠ²ΠΎΡ ΡΠ°ΠΉΠ»ΠΈ (Π·Π°Π·Π²ΠΈΡΠ°ΠΉ Ρ /tmp).
ΠΡΠΈΠΊΠ»Π°Π΄:
Π‘ΠΈΠΌΠ²ΠΎΠ» t Π² ΠΊΡΠ½ΡΡ ΠΎΠ·Π½Π°ΡΠ°Ρ Π»ΠΈΠΏΠΊΠΈΠΉ Π±ΡΡ.
ΠΠΎΡΠΎΡΠΊΠ° Π΄ΠΎΠ²ΡΠ΄ΠΊΠΎΠ²Π° ΡΠ°Π±Π»ΠΈΡΡ
| Π‘ΠΈΠΌΠ²ΠΎΠ»ΡΡΠ½Ρ | Π§ΠΈΡΠ»ΠΎΠ²ΠΈΠΉ | ΠΠ½Π°ΡΠ΅Π½Π½Ρ (ΡΠ°ΠΉΠ») | ΠΠ½Π°ΡΠ΅Π½Π½Ρ (ΠΠΎΠ²ΡΠ΄Π½ΠΈΠΊ) |
|---|---|---|---|
| — | 0 | ΠΠ΅ΠΌΠ°Ρ Π΄ΠΎΡΡΡΠΏΡ | ΠΠ΅ΠΌΠ°Ρ Π΄ΠΎΡΡΡΠΏΡ |
| –x | 1 | ΠΠΈΠΊΠΎΠ½Π°ΡΠΈ | ΠΠ²Π΅ΡΡΠΈ |
| -w- | 2 | ΠΠ°ΠΏΠΈΡΠ°ΡΠΈ | Π‘ΡΠ²ΠΎΡΠΈΡΠΈ/Π²ΠΈΠ΄Π°Π»ΠΈΡΠΈ (Π· x) |
| -wx | 3 | ΠΠ°ΠΏΠΈΡΠ°ΡΠΈ + Π²ΠΈΠΊΠΎΠ½Π°ΡΠΈ | ΠΠΌΡΠ½ΠΈΡΠΈ + Π²Π²Π΅ΡΡΠΈ |
| r– | 4 | Π§ΠΈΡΠ°Π½Π½Ρ | Π‘ΠΏΠΈΡΠΎΠΊ ΡΠΌΠ΅Π½ (Π· x) |
| r-x | 5 | ΠΡΠΈΡΠ°ΡΠΈ + Π²ΠΈΠΊΠΎΠ½Π°ΡΠΈ | Π‘ΠΏΠΈΡΠΎΠΊ + Π²Π²ΡΠ΄ |
| rw- | 6 | Π§ΠΈΡΠ°Π½Π½Ρ + Π·Π°ΠΏΠΈΡ | ΠΠ΅ΡΠ΅Π³Π»ΡΠ΄ + Π·ΠΌΡΠ½Π° Π²ΠΌΡΡΡΡ |
| rwx | 7 | ΠΠΎΠ²Π½ΠΈΠΉ Π΄ΠΎΡΡΡΠΏ | ΠΠΎΠ²Π½ΠΈΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ |
ΠΡΠΈΠΊΠ»Π°Π΄ΠΈ, ΡΠΊΡ Π²ΠΈ ΡΠ°ΡΡΠΎ Π±Π°ΡΠΈΡΠ΅
- -rw-r–r– (0644) β Π²Π»Π°ΡΠ½ΠΈΠΊ ΠΌΠΎΠΆΠ΅ ΡΠΈΡΠ°ΡΠΈ/Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΠΈ; ΡΠ½ΡΡ ΠΌΠΎΠΆΡΡΡ Π»ΠΈΡΠ΅ ΡΠΈΡΠ°ΡΠΈ.
- -rwxr-xr-x (0755) β Π²Π»Π°ΡΠ½ΠΈΠΊ ΠΌΠΎΠΆΠ΅ ΡΠΎΠ±ΠΈΡΠΈ Π²ΡΠ΅; ΡΠ½ΡΡ ΠΌΠΎΠΆΡΡΡ Π·Π°ΠΏΡΡΠΊΠ°ΡΠΈ, Π°Π»Π΅ Π½Π΅ Π·ΠΌΡΠ½ΡΠ²Π°ΡΠΈ.
- drwxrwxrwxrwt (1777) β ΡΠ΅ΠΊΠ° Π· ΠΏΡΠ°Π²Π°ΠΌΠΈ Π΄ΠΎΡΡΡΠΏΡ Π΄ΠΎ Π²ΡΡΠΎΠ³ΠΎ ΡΠ²ΡΡΡ Π· Π»ΠΈΠΏΠΊΠΈΠΌ Π±ΡΡΠΎΠΌ (ΡΠΊ /tmp).
ΠΠΈΡΠ½ΠΎΠ²ΠΎΠΊ
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π²ΡΡΠΊΠΈ ΠΏΡΠ°Π² Π΄ΠΎΡΡΡΠΏΡ Π΄ΠΎ ΡΠ°ΠΉΠ»ΡΠ² Ρ Linux:
- ΠΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅ ls -l Π΄Π»Ρ ΡΠ²ΠΈΠ΄ΠΊΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π³Π»ΡΠ΄Ρ.
- ΠΠΈΠΊΠΎΡΠΈΡΡΠΎΠ²ΡΠΉΡΠ΅ stat Π΄Π»Ρ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ²ΠΎΠ΄Ρ.
- ΠΠ°Π²ΡΡΡΡΡΡ ΡΠΈΡΠ°ΡΠΈ ΡΠΊ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½Ρ (rwx), ΡΠ°ΠΊ Ρ ΡΠΈΡΠ»ΠΎΠ²Ρ (755, 644) ΠΏΠΎΠ·Π½Π°ΡΠ΅Π½Π½Ρ.
- ΠΠ°ΠΌ’ΡΡΠ°ΠΉΡΠ΅, ΡΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΈ Π΄ΠΎΡΡΠΈΠΌΡΡΡΡΡΡ ΡΠΈΡ ΡΠ°ΠΌΠΈΡ ΠΏΡΠ°Π²ΠΈΠ», Π°Π»Π΅ ΡΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΡΡΡΡ x ΠΏΠΎ-ΡΡΠ·Π½ΠΎΠΌΡ.
Π―ΠΊ ΡΡΠ»ΡΠΊΠΈ Π²ΠΈ Π·ΡΠΎΠ·ΡΠΌΡΡΡΠ΅ ΡΡ ΠΎΡΠ½ΠΎΠ²ΠΈ, Π΄ΠΎΠ·Π²ΠΎΠ»ΠΈ ΡΡΠ°Π½ΡΡΡ ΠΏΠΎΡΡΠΆΠ½ΠΎΡ Ρ Π·ΡΠΎΠ·ΡΠΌΡΠ»ΠΎΡ ΡΠ°ΡΡΠΈΠ½ΠΎΡ Π±Π΅Π·ΠΏΠ΅ΠΊΠΈ Linux.
