GNU/Linux >> Znalost Linux >  >> Ubuntu

Co je Umask a jak jej používat

Úvod

Při vytváření nového souboru nebo adresáře Linux použije výchozí sadu oprávnění. umask umožňuje změnit tato výchozí oprávnění.

V tomto tutoriálu se dozvíte, co je umask, jak funguje a jak jej používat k nastavení oprávnění k souborům a adresářům pro jednotlivé uživatele nebo skupiny.

Předpoklady

  • Systém založený na Linuxu (např. Ubuntu, CentOS, Debian)
  • Uživatelský účet s právy sudo
  • Přístup k příkazovému terminálu

Přehled maskování

Výraz umask odkazuje na dvě věci:

1. Linuxový umask příkaz. umask (uživatelský režim vytváření souborů) je příkaz Linuxu, který vám umožňuje nastavit výchozí oprávnění pro nově vytvořené soubory a složky.

2. Uživatelsky definovaná „maska“ oprávnění. Uživatel si může vybrat, jak omezit oprávnění pomocí masky oprávnění . Maska oprávnění spolupracuje s výchozími systémovými oprávněními a mění je. umask příkaz se používá k použití této masky.

Jak Umask funguje?

umask funguje tak, že ovlivňuje výchozí oprávnění souborů a složek v systému Linux.

V Linuxu existují tři kategorie oprávnění pro každý soubor a složku:

  • Uživatel: Definuje oprávnění pro každého jednotlivého uživatele. Ve výchozím nastavení je jako vlastník nastaven uživatel, který vytváří soubor nebo složku.
  • Skupina: Definuje oprávnění pro skupinu uživatelů, kteří sdílejí stejnou úroveň přístupu.
  • Jiné: Definuje oprávnění pro každého, kdo není zahrnut do dvou předchozích kategorií.

Ke kontrole oprávnění pro domovskou složku použijte následující příkaz:

ls -l

Každý řádek výstupu začíná 10znakovým řetězcem s podrobnostmi o oprávněních. Tento řetězec rozděluje zvýrazněnou položku a skládá se z následujících prvků:

  • d :Označuje typ souboru (adresář).
  • rwx :Označuje uživatelská oprávnění (čtení, zápis a spouštění).
  • r-x :Označuje oprávnění skupiny (čtení a spouštění).
  • r-x :Označuje další oprávnění (čtení a spouštění).

Syntaxe příkazu umask

Pomocí umask příkaz bez dalších možností příkazu vrátí aktuální masku jako výstup:

umask používá následující syntaxi:

umask [-p] [-S] [mask]

Kde:

  • [mask] :Nová maska ​​oprávnění, kterou používáte. Ve výchozím nastavení je maska ​​prezentována jako číselná (osmičková) hodnota.
  • [-S] :Zobrazí aktuální masku jako symbolickou hodnotu.
  • [-p] :Zobrazí aktuální masku spolu s umask příkaz, který umožňuje jeho kopírování a vkládání jako budoucí vstup.

Symbolické a číselné hodnoty umask

Jak jsme uvedli v příkladu výše, umask lze zobrazit jako číselnou (osmičkovou) nebo symbolickou hodnotu.

Maska může mít následující číselné a odpovídající symbolické hodnoty:

0 --- Žádné oprávnění
1 --x Provést
2 -w- Napište
3 -wx Zapsat a spustit
4 r-- Přečíst
5 r-x Přečíst a spustit
6 rw- Čtěte a pište
7 rwx Čtení, zápis a spouštění

Jak vypočítat hodnoty Umask

Linux používá následující výchozí hodnoty masky a oprávnění:

  • Výchozí systémové hodnoty oprávnění jsou 777 (rwxrwxrwx ) pro složky a 666 (rw-rw-rw- ) pro soubory.
  • Výchozí maska ​​pro uživatele bez oprávnění root je 002, čímž se oprávnění složky mění na 775 (rwxrwxr-x ) a oprávnění k souboru 664 (rw-rw-r-- ).
  • Výchozí maska ​​pro uživatele root us 022, měnící oprávnění složky na 755 (rwxr-xr-x ) a oprávnění k souboru 644 (rw-r--r-- ).

To nám ukazuje, že konečná hodnota oprávnění je výsledkem odečtení umask z výchozí hodnoty oprávnění (777 nebo 666).

Pokud například chcete změnit hodnotu oprávnění složky z 777 (čtení, zápis a spouštění pro všechny) na 444 (čtení pro všechny), musíte použít umask hodnota 333, od:

777 - 444 = 333

Jak nastavit a aktualizovat výchozí hodnotu Umask

Chcete-li použít nový umask, použijte následující syntaxi hodnota:

umask [mask]

Kde:

  • [mask] :Maska, kterou chcete použít, buď jako symbolickou nebo číselnou hodnotu.

Nastavení symbolické hodnoty umask

Nastavte nový umask hodnotu pomocí symbolických hodnot s následující syntaxí:

umask u=#,g=#,o=#

Kde:

  • u :Označuje uživatelská oprávnění.
  • g :Označuje oprávnění skupiny.
  • o :Označuje další oprávnění.
  • # :Symbolická hodnota oprávnění, kterou chcete použít, jak je podrobně uvedeno v tabulce výše.

Poznámka: Při nastavování hodnoty symbolické masky nikdy nepoužívejte mezeru za čárkami.

Můžete použít i další operátory:

  • = : Vytváří specifikovaná oprávnění k souboru a zakazuje blíže nespecifikovaná oprávnění.
  • + : Vytváří specifikovaná oprávnění, ale nemění blíže nespecifikovaná oprávnění.
  • - :Zakazuje specifikovaná oprávnění, ale nemění nespecifikovaná oprávnění.

Nastavení číselné hodnoty Umask

Jakmile spočítáte požadovaný umask číselnou hodnotu, nastavte ji pomocí:

umask [mask]

Kde:

  • [mask] :Číselná hodnota masky, kterou chcete použít.

Rozdíl mezi umask a chmod

Příkaz chmod v Linuxu funguje podobně jako umask příkaz. Také se používá k definování oprávnění pro soubory a složky.

Rozdíl mezi umask a chmod je to umask změní výchozí oprávnění a tím i oprávnění pro všechny nově vytvořené soubory a složky, zatímco chmod nastavuje oprávnění pro soubory a složky, které již existují.


Ubuntu
  1. Co je příkaz Chown v Linuxu a jak jej používat

  2. Chroot „vězení“ – co to je a jak jej používat?

  3. Co je Build-Essential-Ubuntu, jak jej nainstalovat a používat?

  1. Co je příkaz cURL a jak jej používat?

  2. Co je Umask v Linuxu

  3. Co je a jak používat složku public_ftp

  1. Jak nainstalovat a používat TensorFlow na CentOS 7

  2. Co je to hezké jméno hostitele a jak jej nastavit

  3. Příkaz lspci:Co to je a jak jej používat