Úvod
Linux, stejně jako jiné operační systémy podobné Unixu, umožňuje více uživatelům pracovat na stejném serveru současně, aniž by se navzájem rušili.
Jednotlivci sdílející přístup k souborům představují riziko odhalení utajovaných informací nebo dokonce ztráty dat, pokud k jejich souborům nebo adresářům přistupují jiní uživatelé. K vyřešení tohoto problému přidal Unix oprávnění k souboru funkce, která určuje, jakou moc má každý uživatel nad daným souborem nebo adresářem.
V tomto kurzu se dozvíte, jak zobrazit a změnit oprávnění k souborům v systému Linux.
Jak zobrazit kontrolní oprávnění v systému Linux
Chcete-li začít s oprávněními k souborům, musíte najít aktuální nastavení oprávnění pro Linux. V závislosti na vašich osobních preferencích máte na výběr ze dvou možností:kontrola v grafickém rozhraní nebo pomocí příkazu .
Zkontrolujte oprávnění pomocí GUI
Nalezení oprávnění k souboru (adresáři) přes grafické uživatelské rozhraní je jednoduché.
1. Najděte soubor, který chcete prozkoumat, klikněte pravým tlačítkem na ikonu a vyberte Vlastnosti .
2. Otevře se nové okno, ve kterém se nejprve zobrazí Základní informace o souboru.
Přejděte na druhou kartu v okně s názvem Oprávnění .
3. Zde uvidíte, že oprávnění pro každý soubor se liší podle tří kategorií:
- Vlastník (uživatel, který vytvořil soubor/adresář)
- Skupina (do které patří vlastník)
- Ostatní (všichni ostatní uživatelé)
U každého souboru může vlastník udělit nebo omezit přístup uživatelům podle kategorií, do kterých spadají.
V našem příkladu vlastník souboru test.txt má přístup k „Čtení a zápisu “, zatímco ostatní členové jeho skupiny, stejně jako všichni ostatní uživatelé, mají „Pouze pro čtení " přístup. Proto mohou soubor pouze otevřít, ale nemohou provádět žádné úpravy.
Chcete-li změnit konfiguraci souboru, může uživatel otevřít rozbalovací nabídku pro každou kategorii a vybrat požadované oprávnění.
Kromě toho můžete soubor nastavit jako spustitelný, což mu umožní spustit jako program, zaškrtnutím možnosti Spustit box.
Zkontrolujte oprávnění v příkazovém řádku pomocí příkazu Ls
Pokud dáváte přednost použití příkazového řádku, můžete snadno najít nastavení oprávnění souboru pomocí příkazu ls, který se používá k výpisu informací o souborech/adresářích. K příkazu můžete také přidat volbu –l, abyste viděli informace ve formátu dlouhého seznamu.
Chcete-li zkontrolovat konfiguraci oprávnění souboru, použijte příkaz:
ls –l [file_name]
Například příkaz pro výše zmíněný soubor by byl:
ls –l test.txt
Jak je vidět na obrázku výše, výstup poskytuje následující informace:
- oprávnění k souboru
- vlastník (tvůrce) souboru
- skupina, do které vlastník patří
- datum vytvoření.
Zobrazuje nastavení oprávnění seskupená do řetězce znaků (-, r, w, x) rozdělených do čtyř sekcí:
- Typ souboru . Pro typ jsou tři možnosti. Může to být buď běžný soubor (– ), adresář (d ) nebo odkaz (i ).
- Oprávnění uživatele (vlastníka) k souboru
- Oprávnění skupiny vlastníka k souboru
- Oprávnění ostatních uživatelů k souborům
Znaky r , w a x znamená číst , pište a spustit .
Kategorie mohou mít všechna tři oprávnění, pouze specifická nebo žádná (zastoupená – , za zamítnuto).
Uživatelé, kteří mají oprávnění ke čtení může vidět obsah souboru (nebo souborů v adresáři). Nemohou jej však upravovat (ani přidávat/odebírat soubory v adresáři). Na druhou stranu ti, kteří mají práva psaní může upravovat (přidávat a odstraňovat) soubory. Konečně možnost provádět znamená, že uživatel může soubor spustit. Tato možnost se používá hlavně pro spouštění skriptů.
V předchozím příkladu výstup ukázal, že test.txt je běžný soubor s oprávněním pro čtení a zápis přiřazeným vlastníkovi, ale skupině a ostatním poskytuje přístup pouze pro čtení.
Změna oprávnění k souboru pomocí příkazu Chmod
Jako všichni uživatelé Linuxu budete v určitém okamžiku muset upravit nastavení oprávnění souboru/adresáře. Příkaz, který takové úlohy provádí, je chmod
příkaz.
Základní syntaxe je:
chmod [permission] [file_name]
Existují dva způsoby, jak definovat oprávnění:
- pomocí symbolů (alfanumerické znaky)
- pomocí metody osmičkového zápisu
Definujte oprávnění k souboru pomocí symbolického režimu
Chcete-li zadat nastavení oprávnění pomocí alfanumerických znaků, budete muset definovat přístupnost pro uživatele/vlastníka (u) , skupina (g) a další (o) .
Zadejte počáteční písmeno pro každou třídu a za ním rovnítko (=) a první písmeno přečteného (r) , napište (w) a/nebo spusťte (x) privilegia.
Chcete-li nastavit soubor tak, aby byl veřejný pro čtení, zápis a spouštění, příkaz je:
chmod u=rwx,g=rwx,o=rwx [file_name]
Chcete-li nastavit oprávnění jako ve výše uvedeném souboru test.txt být:
• čtení a zápis pro uživatele
• číst pro členy skupiny
• čtení pro ostatní uživatele
Použijte následující příkaz:
chmod u=rw,g=r,o=r test.txt
Dalším způsobem, jak určit oprávnění, je použití osmičkového/numerického formátu. Tato možnost je rychlejší, protože vyžaduje méně psaní, i když není tak přímočará jako předchozí metoda.
Místo písmen představuje osmičkový formát oprávnění s čísly:
- r (ead) má hodnotu 4
- w (rite) má hodnotu 2
- (e)x (ecute) má hodnotu 1
- žádné oprávnění má hodnotu 0
Privilegia jsou shrnuta a znázorněna jedním číslem. Možnosti jsou tedy:
- 7 – pro oprávnění ke čtení, zápisu a spouštění
- 6 – pro oprávnění ke čtení a zápisu
- 5 – pro oprávnění ke čtení a spouštění
- 4 – pro oprávnění ke čtení
Protože musíte definovat oprávnění pro každou kategorii (uživatel, skupina, vlastník), příkaz bude obsahovat tři (3) čísla (každá představuje součet oprávnění).
Podívejme se například na soubor test.txt, který jsme symbolicky nakonfigurovali pomocí chmod u=rw,g=r,o=r test.txt
příkaz.
Stejná nastavení oprávnění lze definovat pomocí osmičkového formátu příkazem:
chmod 644 test.txt
Definujte oprávnění k souboru v osmičkovém/numerickém režimu
Změna vlastnictví souboru uživatele a skupiny
Kromě změny oprávnění k souboru můžete narazit na situaci, která vyžaduje změnu vlastnictví souboru uživatele nebo dokonce vlastnictví skupiny .
Provedení některého z těchto úkolů vyžaduje, abyste nejprve přepnuli na oprávnění superuživatele. Použijte jednu z možností popsaných v předchozí pasáži.
Chcete-li změnit vlastnictví souboru použijte příkaz chown:
chown [user_name] [file_name]
Místo [user_name]
zadejte jméno uživatele, který bude novým vlastníkem souboru.
Chcete-li změnit vlastnictví skupiny zadejte následující příkaz:
chgrp [group_name] [file_name]
Místo [group_name]
zadejte název skupiny, která bude novým vlastníkem souboru.