Oprávnenie, chmod, umask a profily
![[Svetla]](/images/permisos.png)
S Následkom tomu, GNU / Linux je prístupná s bohatým grafickým rozhraním, ako Gnome alebo KDE, keď potrebujeme zmeniť povolenie na prístup k súborom alebo adresárom zvyčajne to prostredníctvom vlastností pre správcu súborov. Ale občas, zistíme, že dáme nejaký štýl vyhlásenie, "zmena oprávnenie na 755" alebo "Put na masku 022" Ale čo je to asi 755 a 022? Alebo sme boli trochu zaskočilo, keď v Ubuntu, vidíme, že môžeme čítať užívatelia 'doma iné adresára Ako je to možné?
Predpokladajme nasledujúce adresáre:
-l jdoe @ ubuntu: ~ $ ls-l -07-05 1 :05 midirectorio drwxr-XR-x 2 jdoe mygroup 2008 -07 - 05 January 4096: 05 mydirectory jdoe migrupo 12 2008 -07-05 1 : 10 test -Rw-r - r - 1 jdoe mygroup -07 - 05 December 2008 1: 10 test
Máme jeden súbor s názvom "test", vytvorený nás, ktorý bol uvedený v predvolenom nastavení oprávnenie rw-r--r-- a adresár mydirectory "aj s predvolené povolenia rwxr-xr-x .
Prvé tri znaky (-RW) predstavujú oprávnenia užívateľa, ktorý vlastní súbor (jdoe), tieto tri (r -) v skupine, ktorá vlastní súbor (mygroup) a posledné tri (r -), pre zvyšok užívateľov.
Na druhej strane, pridelené oprávnenia sú tri: čítanie / čítanie (r), zápis / zápis (w) a spustiť / execute (x). Ako zmyslov, ak skript v určitom mieste, bude znamenať, že používateľ alebo skupina zainteresovaných užívateľov, žiadne takéto povolenie. Takže členovia skupiny "mygroup" (r - -) majú len povolenie na čítanie, ale nie písať, alebo bežať ako pomlčka objaví v mieste "w" a "x".
Bit binárne aritmetiky
Take povolenia a náhradou za "0" skripty a pre "1" akýkoľvek list, ktorý sa objaví na svojom mieste, a to prevod z binárnej do desatinný osmičkový (s iba tri kúsky môže predstavovať 0 až 7). Oprávnenie súborov a adresárov, by sme sa takto:
| Ovplyvňuje | Povolenie | Binárne | Octal | |
|---|---|---|---|---|
| užívateľ | rw- | 110 | 2 2 +2 1 +0 = 6 | ⇒ 644 |
| skupina | r - | 100 | 2 2 +0 +0 = 4 | |
| zvyšok | r - | 100 | 2 2 +0 +0 = 4 | |
| Ovplyvňuje | Povolenie | Binárne | Octal | |
|---|---|---|---|---|
| užívateľ | RWX | 111 | 2 2 +2 1 +2 0 = 7 | ⇒ 755 |
| skupina | RX | 101 | 2 2 +0 +2 0 = 5 | |
| zvyšok | RX | 101 | 2 2 +0 +2 0 = 5 | |
Zjednodušenie
| Octal | Oprávnenie |
|---|---|
| 0 | - - - |
| 1 | - - X |
| 2 | - W - |
| 3 | - WX |
| 4 | r - - |
| 5 | r - x |
| 6 | rw - |
| 7 | RWX |
Nemáte naozaj potreba, aby tento výpočet zakaždým, keď chcete poznať číselné vyjadrenie povolenie, je ľahko zapamätateľné po krôčiku budeme používať notáciu.
Ďalším jednoduchým spôsobom, ako zistiť, či sa pozrieme na priloženej tabuľky, je mať jeden na pamäti, že 4 je povolenie na čítanie, 2 na 1 zápisnice a prevedenie. Takže ak máme na udelenie oprávnenia pre čítanie a zápis bude to: 4 +2 = 6. Ak namiesto toho poskytuje Čítať a spustiť 4 +1 = 5.
Najbežnejšie sú oprávnení 755, 750, 644 a 640. Licencia 777 je "nebezpečný" a dávame všetci povolenie pre všetky.
Modifikácia oprávnenie
Príkaz zmeny povolenia je chmod . Podobne ako takmer všetky * príkaz NIX je moje pružné. Bez toho aby sme chceli, aby sa komplexný tutoriál, vidieť niektoré z ich použitia:
Predpokladajme, že test súbor vytvorený na začiatku, to bolo bash skript a chcete udeliť oprávnenie na výkon užívateľov a skupín, a odstrániť prečítať oprávnenia iným užívateľom.
Jedným zo spôsobov, by úplne nanovo definovať oprávnenie prístupu k súboru: Je to "dlhá", ale viac intuitívne
=rwx, g =rx, o = test chmod u = RWX, g = rx, o = test
Varianta tohto formulára je vhodná len zmeny tohto pôvodného stavu:
chmod ug + x, alebo test
Teda "pridať" (+) výkon oprávnenia k užívateľovi (u) a skupina (g), a "odčítať" (-) povolenie na čítanie pre ostatných užívateľov (o)
Ale najrýchlejší spôsob je tento:
test chmod 750 test
Vo všetkých troch prípadoch je výsledok rovnaký:
jdoe migrupo 12 2008 -07-05 02: 15 test -Rwxr-x --- 1 jdoe mygroup -07 to 05.12.2008 02: 15 test
Ako druhý príklad Predpokladám, že chceme odobrať povolenie na čítanie a vykonať mydirectory adresár a všetky súbory a podadresáre, ktoré obsahuje pre iných užívateľov.
o-rx midirectorio chmod-R o-RX mydirectory
-R hovorí, chmod, aby sa operácia rekurzívne o jeho obsahu.
Povolenie maska
Spočiatku sme vytvorili testovací súbor a adresár mydirectory, ale vytvoriť im nemusí priradiť žiadne oprávnenie. Systém udržiava hodnotu s názvom umask určuje oprávnenia v predvolenom nastavení, zakaždým sme sa vytvoriť súbor alebo adresár. A to môžu byť zmenené kedykoľvek s umask príkazom .
Keď sme vytvorili testovací súbor s textovým editorom, ktorý chcel postúpiť až k horieť, asi 666 povolenia. Tj. Čítania / zápisu pre všetky. Ale hodnota umask bola 022. Výsledná približne 644 povolenia pre súbor.
Podobne, keď sme vytvorili adresár s mkdir midirectorio systém sa snažil priradiť nejaké povolenie 777, tj čítanie / zápis / spustenie pre každého. Ale on sa stretol skôr maska (022) a vyústila v približne 755 povolení pre mydirectory.
Bit binárne logiky
Táto hodnota umask sa binárne masku, na snahe poskytnúť čo najväčší oprávnenia systému:
umask 022 000 010 010 000 010 010 1 je doplnok z 111 umask 101 101 111 101 101 A (& &) 110 110 110 (666) 111 111 111 (777) ------------ ------------ 110 100 100 (644) 111 101 101 (755)
Alebo oveľa jednoduchšie, ako jednoduchý "odčítania" oprávnenia:
666 777 022 (-) 022 (-) ---- ---- 644 755
Ubuntu: umask v praxi
Maska 022 je, že Ubuntu v predvolenom stave, keď je pridaný užívateľmi. Táto maska, ak spoločný systém je príliš liberálny, pretože umožňuje komukoľvek čítať a spúšťať súbory z domovských adresárov iných užívateľov.
Môžeme zmeniť túto hodnotu kedykoľvek. Ak chcete zabrániť čítanie / zápis / spustenie pre ostatných užívateľov, stačí spustiť:
umask 027 Táto hodnota zostane aktívny, kým používateľ relácie, a platí pre súbory a adresáre v start-upov, ale budú obnovené na 022 nabudúce my pripojenie a nemení súborov a adresárov na užívateľa profile už vytvorili.
Ak chcete "správny" existujúce profily by mohol byť použitý, napríklad v prípade, že používateľ "jdoe"
o-rwx / home / jdoe chmod-R o-RWX / home / jdoe
A editácia súboru /home/jdoe/.profile odkomentovat a zmeniť umask 027 , aby trvalé nastavenie pre budúcnosť. I keď táto zmena ovplyvní iba užívateľ "jdoe."
Tak, aby v budúcnosti všetky nové používateľov sú vytvorené bez čítanie / zápis / spustenie pre každého:
- Spoločná Edit profile
/etc/profilea rovnaké zmeny:umask 027 - Upravte
/etc/adduser.confa modficamos:DIR_MODE=0750. Táto úprava nie je nevyhnutne nutné, a to bude robiť, je nemôžeme ani vstúpiť do domovského adresára užívateľa scd
Všimnite si, že cuaquier používateľ môže prepísať túto hodnotu umask, a to buď z príkazového riadku alebo zmeniť vo svojom $HOME/.profile , bez súhlasu správcu.
Mohli by sme nájsť chmod alebo umask hodnoty so štyrmi číslicami. Napríklad umask 0022. Prvá číslica predstavuje tri kúsky zvláštne povolenie, ktoré nemajú liečiť tu, ktoré sú málo používané v bežnej prevádzke.
![[Hlavná stránka]](/wp-content/themes/OATech265/images/home.png)
![[Hlavná stránka]](/wp-content/themes/OATech265/images/feed.png)




































