Nastavování oprávnění

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
m (Práva pro přístup k souborům a složkám: Dodáno anglické znění práv.)
(Nastavení práv: Úprava vzhledu, dodány příklady.)
Řádka 82: Řádka 82:
 
* Co má Franta dělat, aby do souboru mohl zapsat?
 
* Co má Franta dělat, aby do souboru mohl zapsat?
  
== Nastavení práv ==
+
== Změna oprávnění (<code>chmod</code>) ==
=== Příkaz chmod ===  
+
* Dva režimy: změna všech práv naráz, nebo změna jednoho oprávnění.
* Dva režimy:
+
; Kompletní sada oprávnění naráz:
** číselné vyjádření práv: nastaví kompletní sadu oprávnění naráz
+
* Zapíšeme oprávnění jako posloupnost jedniček (má právo) a nul (nemá právé) v pořadí: <tt>u(rwx) g(rwx) o(rwx)</tt>.
** nastavení jednotlivých oprávnění.
+
* Trojice přečteme jako dvojkový zápis desítkových čísel.
 +
<div class="Priklad">
 +
Představme si, že chceme zapsat, že vlastník má všechna práva, skupina nemůže zapisovat a ostatní mohou jen číst:
 +
  u  g  o
 +
rwx rwx rwx
 +
111 101 100
 +
  7  5  4
 +
</div>
 +
Použití:
 +
chmod 754 data.txt
 +
; Nastavení jednotlivých oprávnění:
 +
* Píšeme: <code>chmod ''komu''+/-''co'' ''soubor''</code>
 +
** <code>''komu''</code>... <code>u</code>, <code>g</code>, <code>o</code>, ev. <code>a</code> jako ''all'' pro všechny typy.
 +
** <code>+</code>... nastavit právo nebo <code>-</code>... odebrat právo,
 +
** <code>''co''</code>... <code>r</code>, <code>w</code>, <code>x</code>.
 +
Příklad:
 +
chmod u+r data.txt
  
=== Změna vlastníka a skupiny ===
+
== Změna vlastníka a skupiny ==
* Při vytvoření souboru
+
; Při vytvoření souboru
** Vlastníkem souboru je na začátku ten, kdo ho vytvoří.
+
* Vlastníkem souboru se při vytvoření souboru stane ten, kdo soubor vytvoří.
** Soubor vlastní skupina, která je primární skupinou vlastníka.
+
* Nový soubor vlastní skupina, která je primární skupinou vlastníka.
* chown
+
; <code>chown</code>
** změna vlastníka
+
* změna vlastníka
** obvykle může provádět pouze root (lze změnit)
+
* obvykle může provádět pouze administrátor (''root'')(lze změnit)
*chgrp
+
sudo chown xmarek data.txt
** změna vlastnické skupiny
+
; <code>chgrp</code>
** může provádět vlastník a root
+
* změna vlastnické skupiny
 +
* může provádět vlastník a administrátor (''root'')
 +
chgrp ucetni data.txt
  
 
== Opakování ==
 
== Opakování ==

Verze z 19. 3. 2014, 14:20


Obsah

Práva pro přístup k souborům a složkám

V tomto článku se zabýváme klasickým systémem nastavení oprávění tak, jak fungoval v Unixu a jak funguje dodnes v mnoha distribucích GNU/Linuxu. Existují ale samozřejmě rozšíření jako SELinux, AppArmor a další.

Oprávnění k souboru si můžeme představit jako tabulku s devíti jednobitovými hodnotami (má právo/nemá právo):

r(ead) w(rite) x(eXecute)
u(ser)  ?  ?  ?
g(roup)  ?  ?  ?
o(thers)  ?  ?  ?

Oprávnění nastavujeme

Význam jednotlivých oprávnění

Pro soubory
Pro složky
Poznámka: představte si složku jako soubor, obsahující seznam názvů souborů a odkazů na jejich datové bloky

Úkoly

  1. Jaká práva potřebujete mít pro provedení příkazů:
    • ls directory
    • mv directory/file.txt file.txt
    • mv directory/file.txt directory/file-backup.txt
    • cp directory/file.txt file.txt
    • cat directory/file.txt
    • rm directory/file.txt

Zjištění nastavení práv

Příkazem ls -l

Příklad výstupu:

-rwxr--r-- 1 student skupina   1627  8. lis 10.52 soubor.txt
Význam znaků
Úkol

Změna oprávnění (chmod)

Kompletní sada oprávnění naráz

Představme si, že chceme zapsat, že vlastník má všechna práva, skupina nemůže zapisovat a ostatní mohou jen číst:

 u   g   o
rwx rwx rwx
111 101 100
 7   5   4

Použití:

chmod 754 data.txt
Nastavení jednotlivých oprávnění

Příklad:

chmod u+r data.txt

Změna vlastníka a skupiny

Při vytvoření souboru
chown
sudo chown xmarek data.txt
chgrp
chgrp ucetni data.txt

Opakování

Zdroje

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje