Práce v terminálu – VIII. kapitola

Práce v terminálu – 8. kapitola

Dnes jak jsem avizoval se budeme věnovat oprávnění souborů, pojmem superuser a dalšími zajímavosti, které jsou charakteristické pro Unixový svět (mimochodem Microsoft ve svých Windows začal podobný systém také nasazovat). Jako vlastník souboru máte velmi snadno možnost ovlivnit, jestli může váš kolega na stejné pracovní stanici otevírat, případně upravovat, nebo jestli bude moct být spouštěn zdrojový kód aktivně, či pouze „ke čtení“ v textové formě. Je to Alfa a Omega zabezpeční, správná práva, dělají z Unixových stanic neprobořitelné zdi!

Pozn: Tato práva se nechají celkem pohodlně nastavovat v grafickém prostředí

Přehled o právech souborů

Jedná se o velmi známý příkaz rozšířený o přepínač. Zkuste si v nějaké složce spustit ls -l. Zde je jeden příklad:

ondrej@ondrej-Lenovo-IdeaPad-Y570 ~/test $ ls -l
celkem 12
-rw-r–r– 1 ondrej ondrej 1 dub 28 00:31 nakup.txt
-rwxr-xr-x 1 ondrej ondrej 96 dub 28 00:29 skript
drwxr-xr-x 2 ondrej ondrej 4096 dub 28 00:29 složka

Spoustu informací, vezmu to po sloupečcích. Pozn. V reálu to má i barvičky (zkuste si to)

Oprávnění – Odkazy – Vlastník – Skupina – Velikost – Datum úpravy – Jméno souboru

První znak označuje druh, zde d – directory (adresář). Viz tabulka!

Znak Význam Zkratka
obyčejný soubor
b soubor blokového zařízení block device
c soubor znakového zařízení character device
d adresář directory
l symbolický odkaz symbolic link
p pojmenovaná roura named pipe
s unixový socket unix socket

Další znaky již ovlivňují samotné oprávnění, zde je klíč.

Oprávnění se dělí na 3 druhy:

r – Read (číst)

w – Write (zapisovat, resp. Upravovat)

x – eXecute (provádět, spouštět)

„-“ pomlčka označuje neudělené oprávnění

Oprávnění se nám podaří snadno rozklíčovat, pokud si ho znovu dáme do sloupečků.

drwxr-xr-x 2 ondrej ondrej 4096 dub 28 00:29 složka

Typ Vlastník Skupina Zbytek světa
D rwx r-x r-x

Čti: „Adresář, do nějž smí vlastník zapsat, či číst (popř. spustit, což je irelevantní u adresáře), skupina může číst (a spouštět) a zbytek světa také číst (a spouštět).

Další informaci, které nám řádek z ls –l poskytne je skupina a vlastník ( v řádku výše tučně). Ovšem, než to začneme řešit, kdo vlastně jsem. Pokud si nejste jisti uživ. Jménem, zadejte „whoami“. Informace o skupinách, jejichž jste členem získáte přes příkaz „id“. Výstup z „id“ vypadá lépe, když ho zadáte jako – „id -G -n“. Tedy ve výpisu ls -l je to v pořadí vlastník, skupina.

(Ne)omezujeme práva!

Tedy co musím udělat, abych změnil práva na nějaký soubor? Slouží k tomu příklad chmod. Předvedu na příkladu.

ondrej@ondrej-Lenovo-IdeaPad-Y570 ~/test $ chmod u=rw,g=r,o= soubor
ondrej@ondrej-Lenovo-IdeaPad-Y570 ~/test $ ls -l
celkem 4
-rw-r—– 1 ondrej ondrej 1 dub 28 00:58 soubor

Tedy co jsem napsal?

u=práva uživatele, vlastníka (z ang. user, uživatel), tedy může zapsat a číst
g=práva skupiny určené v „ls -l“
o=práva ostatních, zde žádná práva nemají

Lze zkracovat, třeba na chmod ug=rw,o=r soubor*, tedy vlastník i skupina dostane přidělená oprávnění najednou.

Druhy zápisu práv

Převod práv do čísel

Běžný zápis

Bitový zápis

Převod do 8 soustavy

Převedeno

Tedy chmod u=rwx,g=rw,o=r lze zapsat chmod 764! A to je zjednodušení celkem podstatné, že? Poznámka, pokud použijete přepínač -v vypíše se u každého souboru nová práva, totéž i přepínač -c, ale pouze v případě, že se práva změnila.

Předávání kontroly nad soubory

O souborech tedy rozhoduje hlavně vlastník, jak ale vlastníka změnit? Slouží k tomu jednoduchý příkaz chown. Název pochází z anglického change owner, tedy změnit vlastníka. Syntaxe je snadná, tedy:

chown vlastnik soubor

Popřípadě lze i změnit skupinu, odděluje se od jména dvojtečkou
chown vlastnik:skupina soubor

Místo jmen lze také použít identifikátory uživatele (UID), či skupiny (GID). Skupinu lze měnit také samostatný příkazem chgrp (change group).

Příště? Příště si myslím, že proberem systém uživatelů a skupiny, to jsem si při dnešním psaní uvědomil, že jsem vůbec nenačal. Takže to mám jako rest. A další věc, chci začít dělat větvení, tedy IF, FOR cykly, atd. Tedy už si uděláme nějaký komplexnější skript, tak aby to „k něčemu“ bylo, pokud jste četli všechny díly. Omlouvám se za zpoždění a celkem krátký článek

Štítky , , .Záložka pro permanentní odkaz.

Autor: Ondřej Kolín

Student MFF, spokojený uživatel Linux Mint a mám spoustu zajímavých koníčků, které sem raději nebudu ani psát...

Komentáře jsou uzavřeny.