Sobes.tech
Junior

Čo je to umask?

sobes.tech AI

Odpoveď od AI

Umask (skrátené od user file-creation mode mask) je príkaz v operačných systémoch typu Unix/Linux, ktorý nastavuje predvolenú masku práv pre nové súbory a adresáre. Ide o súbor bitov, ktoré sú vypnuté od úplných práv (777 pre adresáre, 666 pre súbory) pri vytváraní objektu.

Zobrazenie umask:

  • Umask sa zvyčajne predstavuje ako trojmiestny oktalový kód, napríklad 022. Každé číslo zodpovedá právam vlastníka, skupiny a všetkých ostatných používateľov.
  • Bity masky sa invertujú vzhľadom na požadované práva. Napríklad, na vypnutie práva na zápis (2) pre skupinu, sa príslušný bit nastaví v umask.

Výpočet výsledných práv:

Práva prístupu pre nový súbor/adresár sa vypočítava ako:

Výsledok = Počiatočné_práva A (NIE umask)

Kde:

  • Počiatočné_práva pre súbor = 666 (rw-rw-rw-)
  • Počiatočné_práva pre adresár = 777 (rwxrwxrwx)
  • NIE umask - bitovo inverzná hodnota umask. Pri použití oktalového kódu sa každé číslo umasku odčíta od 7.

Príklad: umask = 022

  • Pre súbor: 666 A (NIE 022) = 666 A 755 = 644 (rw-r--r--)
  • Pre adresár: 777 A (NIE 022) = 777 A 755 = 755 (rwxr-xr-x)

Zobrazenie a nastavenie umask:

  • Zobrazenie aktuálneho umask:

    # Zobrazuje umask v oktalovom formáte
    umask
    
    # Zobrazuje umask v symbolickom formáte
    umask -S
    
  • Nastavenie nového umask:

    # Nastaví umask v oktalovom formáte
    umask 027
    
    # Nastaví umask v symbolickom formáte
    umask u=rwx,g=rx,o=r
    

Umask je dôležitým nástrojom na zabezpečenie základnej bezpečnosti súborového systému, nastavovaním rozumných predvolených práv pre nové objekty.