Porozumění oprávnění Linuxu a použití chmodu


Během několika posledních měsíců jsem absolvoval kurz na Linuxu a jeden aspekt Linuxu, který mě vždycky zmátl, byl způsob, jakým povolení fungovalo. Například při nahrávání souboru na webový server jednou a zachycení chyby mi můj webhosting řekl mně změnit oprávnění k souboru na 755.

Neměl jsem ponětí o tom, co to znamenalo, přestože se mění oprávnění opravily problém. Nyní jsem si uvědomil, že Linuxová oprávnění nejsou tak komplikovaná, prostě musíte pochopit systém. V tomto článku budu hovořit o oprávněních na platformě Linux na vysoké úrovni a ukáže vám, jak pomocí příkazu chmod změnit oprávnění pro soubory a složky.

Oprávnění pro Linux & amp; Levely

V Linuxu existují v podstatě tři oprávnění, o kterých se obvykle budete muset starat: číst, psát a spouštět. Všechny tři z nich jsou velmi vysvětlující. Nyní, když jsou tato oprávnění aplikována na soubor, jsou použity v úrovních.

Existují tři úrovně oprávnění v systému Linux: vlastník, skupina a další. Vlastník je uživatel, který vlastní soubor nebo složku, skupina zahrnuje další uživatele ve skupině souborů a ostatní reprezentují všechny ostatní uživatele, kteří nejsou vlastníky nebo ve skupině.

Čtení, psaní a spouštění jsou zastoupeny buď jako symbolické znaky, nebo jako osmičková čísla. Pokud například provedete ls -l v adresáři s některými soubory, zobrazí se symbolické zobrazení oprávnění.

Povolení jsou zapsána následovně: první bit je buď pomlčka, nebo písmeno d. Pomlčkaznamená, že je to soubor a dje adresář. Všimněte si, že první bit může být také l, pokud je název souboru odkazem. Dále jsou tři skupiny tří bitů. První bit v každé skupině je pro čtení, druhý bit je pro zápis a třetí bit je pro spuštění. První tři bity jsou pro majitele, druhé tři bity jsou pro skupinu a třetí tři bity jsou pro jiné. Zde je více vizuální vysvětlení.

Pokud vidíte pomlčku namísto písmena, znamená to, že vlastník, skupina nebo všichni ostatní uživatelé nemáte toto povolení. Ve výše uvedeném příkladu má majitel, skupina a všichni ostatní čtení a spouštění oprávnění.

Pokud se podíváte na výstup z příkazu ls-l, zjistíte, že textový soubor praxe má následující oprávnění:

-rw-rw-rw-

To znamená, že každý má pouze oprávnění pro čtení a zápis souboru. Zde je další příklad:

drwxr--r--

Když se podíváme na první bit, uvidíme, že jsou oprávnění pro adresář. Vlastník má oprávnění ke čtení / zápisu / spouštění, ale skupina a ostatní uživatelé mají pouze oprávnění ke čtení.

Reprezentace oktárních čísel

Takto jsou oprávnění zobrazována v systémech Linux pomocí symbolů. Druhým způsobem, jak reprezentovat stejná oprávnění, je použití osmičkových čísel. Když použijeme příkaz chmod později, zjistíte, že můžete změnit oprávnění pomocí symbolů nebo osmičkových čísel.

Takže jak Linux představuje čtení, psaní a spouštění pomocí osmičkových čísel? V zásadě pouze přiřadí číslo každému povolení, jak je uvedeno níže.

Oprávnění ke čtení je reprezentováno 4, zápisem 2 a provedením 1. Vše, co musíte udělat, je přidat, abyste získali osmičkové povolení. Například, vezměme příklad výše, kde všichni mají všechna oprávnění:

-rwxrwxrwx

Vlastník má rwx, takže přidáme 4 + 2 + 1, abychom získali hodnotu 7. Děláme totéž pro skupinu a to samé pro jiné. Konečná osmička je 777. Podívejme se na příklad, kde jsme zadali pouze oprávnění pro čtení a zápis:

-rw-rw-rw-

První osmičkové číslo bude 4 + 2, protože jsme přidat čtení a zápis. Druhá bude stejná jako třetí oktávské číslo. Zde máme konečnou osmičkovou hodnotu 666. Takže teď to zkusme naopak. Řekněme, že chceme vědět, která oprávnění 755představuje? No, je velmi snadné zjistit, jestli to rozdělíte podle jednotlivých čísel. První číslo je 7, které můžeme získat pouze přidáním 4 + 2 + 1, což znamená, že vlastník má oprávnění čtení / zápis / spuštění. Pět lze získat pouze přidáním 4 + 1, což znamená, že skupina a ostatní uživatelé mají oprávnění ke čtení a spouštění.

vysvětlení, jak reprezentovat oprávnění v systému Linux pomocí osmičkových čísel. Je to celkem jednoduché.

Použití chmodu pro změnu oprávnění

Nyní, když rozumíme čtení oprávnění, promluvme si o tom, jak je můžeme změnit. Nejjednodušší nástroj, který lze použít pro tento účel, je příkaz chmod. Zde je návod, jak to funguje. Nejlepší způsob, jak vysvětlit příkaz, je projít příkladem.

Začneme s oprávněními, o kterých jsme hovořili výše, a to:

-rw-rw-rw-

chtěl přidat oprávnění k provedení příkazu pro vlastníka, skupinu a další, mohli bychom se o to pokusit dvěma způsoby. Mohli bychom použít symbolovou metodu nebo osmičkovou metodu. Pro symbolovou metodu bychom postupovali takto:

Přesný příkaz je

/ s>

Syntaxe je následující: písmeno nebo písmena zastupující vlastníka (u), skupina (g() nebo vše (a), za kterým následuje přidání oprávnění nebo -(rpro čtení, wpro zápis a x)

spustit oprávnění pro všechny uživatele. Výsledek, jak je vidět na obrázku výše, je xpro vlastníka, skupinu a další. Řekněme, že chtěl (a) odstranit oprávnění pro zápis a spouštění pouze pro skupinu a další uživatele.

do následujícího příkazu:

chmod go-wx filename

Protože chci změnit oprávnění pro skupinu a další, používám písmeno go. Chci odstranit oprávnění, takže používám značku -. Nakonec chci odstranit oprávnění pro zápis a spouštění, takže používám wa x. Zde je užitečný malý stůl pro použití symbolu:

Takže to je vše, co se týká používání metody symbolů. Nyní promluvme o osmičce, kterou považuji za trochu jednodušší. Osmičkový je pěkný, protože můžete přidat nebo odebrat oprávnění vše najednou

Pokud začneme s následujícími oprávnění na souboru, podívejme se, jak je můžeme změnit pomocí osmičkové metodu:.

-rw-rw-rw-

Níže vidíte, že jsem použil následující příkaz:

chmod 744 filename

To v podstatě říká, že vlastník čte / zapíše / spouští oprávnění a skupina a ostatní získají pouze oprávnění ke čtení. Jak můžete vidět, je snadné přidávat nebo odebírat oprávnění jedním jednoduchým příkazem. Pojďme dál a řekni, že chci změnit oprávnění znovu.

Nyní jsem použil následující příkaz, opět velmi jednoduchý:

chmod 640 filename

Zde jsme zadali vlastníkovi oprávnění ke čtení a zápisu, pouze oprávnění ke čtení skupiny a ostatní oprávnění pro skupinu. Použijete nulu k označení žádné oprávnění. Docela jednoduchý, eh?

Závěrem je to velmi jednoduchý přehled oprávnění pro Linux a může to být mnohem komplikovanější než to, ale pro začátečníky je to dobré místo pro začátek. V budoucnu zveřejním další články o pokročilejších oprávněních. Máte-li jakékoli dotazy, neváhejte se k tomu vyjádřit. Užijte si!

Související příspěvky:


16.02.2017