GNU/Linux >> Znalost Linux >  >> Linux

Co je umask v UNIX/Linux

Maska režimu vytváření uživatelských souborů (umask) je vestavěný příkaz shellu, který lze použít k nastavení výchozích hodnot oprávnění pro čtení/zápis/spouštění u nově vytvořených souborů. Měl by být spuštěn buď ve spouštěcích souborech shellu „.cshrc“ nebo „.profile“.

Je mu přiřazena třímístná osmičková hodnota, která představuje binární inverzní hodnotu oprávnění, která mohou být přiřazena souborům. Tento třímístný číselný argument představuje přístup, který má být „zabráněn“ nebo „zamaskován“ při vytvoření souboru.

Když je soubor vytvořen, jeho oprávnění jsou nastavena na to, co program pro vytváření požaduje, mínus to, co zakazuje nastavení „umask“. Požadovaná hodnota je tedy osmičkový doplněk požadovaného režimu číselných souborů. Číslice poskytují oprávnění uvedená níže:

Oktal Binární Oprávnění
0 000 rwx
1 001 rw-
2 010 r-x
3 011 r–
4 100 -wx
5 101 -w-
6 110 –x
7 111 (žádné)

Změna „umask“

Chcete-li určit požadovanou hodnotu, jednoduše zjistěte číselný ekvivalent pro režim souboru, který chcete získat, a poté jej odečtěte od 777.

Chcete-li například ve výchozím nastavení získat režim 751, vypočítejte 777-751=026 – toto je hodnota, kterou přiřadíte „umask“

% umask 026

Po provedení tohoto příkazu bude tato ochrana automaticky poskytnuta všem budoucím vytvořeným souborům.

Další možností výpočtu hodnot „umask“ je zapamatovat si, že číslo 2 v „umask“ vypíná oprávnění k zápisu, zatímco číslo 7 vypíná oprávnění ke čtení, zápisu a spouštění.

Běžné „odmaskovací“ hodnoty

Ve výchozím nastavení většina verzí UNIX specifikuje osmičkový režim 666 (kterýkoli uživatel může soubor číst nebo zapisovat), když vytváří nové soubory. Podobně jsou nové programy vytvářeny s režimem 777 (kterýkoli uživatel může program číst, zapisovat nebo spouštět).

Nejběžnější hodnoty umask jsou 022, 027 a 077. Hodnota umask 022 umožňuje vlastníkovi číst i zapisovat všechny nově vytvořené soubory, ale všichni ostatní je mohou pouze číst:

  • 0666 :Výchozí režim vytváření souborů.
  • 022 :výsledný režim.
  • 0644 :výsledný režim.

Hodnota umask 077 umožňuje pouze vlastníkovi souborů číst všechny nově vytvořené soubory:

  • 0666 :Výchozí režim vytváření souborů.
  • 077 :maskovat.
  • 0600 :výsledný režim.

Na mnoha systémech UNIX je výchozí umask 022. Toto je zděděno z procesu init, protože všechny procesy jsou potomky init.

Tabulka běžných nastavení umask

umask Přístup uživatele Skupinový přístup Jiné
0000 vše vše vše
0002 vše vše číst, provádět
0007 vše vše žádné
0022 vše číst, provádět číst, provádět
0027 vše číst, provádět žádné
0077 vše žádné žádné


Linux
  1. Migrace Unixu na Linux

  2. Linux – Je Linux Unix?

  3. UNIX / Linux:Co je to Shell? Jaké jsou různé Shelly?

  1. Co je uživatel Linuxu?

  2. Co je Umask v Linuxu

  3. Je Linux Unix?

  1. Linux vs. Unix:Jaký je rozdíl?

  2. Linux – režim Raw klávesnice?

  3. Co znamená průměrná zátěž na Unix/Linux?