Umask

umask (user mask) – polecenie interfejsu POSIX, które odpowiada za ograniczanie praw dostępu do plików[1]. Umożliwia podanie aktualnej tzw. maski użytkownika (maski uprawnień). Maska to zestaw ósemkowych wartości, który jest wykorzystywany do przypisywania uprawnień dla nowych plików w systemach uniksowych i uniksopodobnych (w tym w Linuksie). Aby otrzymać zestaw uprawnień należy od odpowiedniego trybu dostępu, czyli zestawu domyślnych uprawnień, odjąć zawartość maski[2].

Użycie[3]

umask [-p] [-S] [mode]
argument znaczenie
mode maska dla tworzonych plików
-S drukuje maskę w formie symbolicznej
-p wyjście w formie w jakiej może być użyte jako wejście

mode określa w jaki sposób ma się zachować dana maska. Gdy ten argument zostanie pominięty, to zostanie wydrukowana aktualna wartość maski. Jeżeli mode zacznie się od cyfry, zostanie zinterpretowana jako liczba w systemie ósemkowym. W przeciwnym wypadku zostanie zinterpretowana jako maska w formie symbolicznej.

Bity uprawnień

Każdy plik posiada zestaw bitów uprawnień. Wyróżnia się bity uprawnień dla użytkownika (właściciela), grupy i pozostałych. Każda z tych wartości zapisana jest na 3 bitach, więc możliwe wartości należą do zakresu [0, 7]. Poza tym w bitach dotyczących użytkownika, pierwszy bit odpowiada za prawo do odczytania zawartości pliku, drugi za prawo do modyfikacji zawartości danego pliku a trzeci za prawo do wykonywania (analogicznie dla grupy i pozostałych). Gdy do pliku przypisany zostanie zestaw uprawnień 777, to wszyscy będą mieli do niego pełne uprawnienia. Przy domyślnych ustawieniach pliki są tworzone z trybem dostępu 666 a katalogi 777.

Nowe pliki (nie będące katalogami) tworzone dla maski 022 będą miały uprawnienia 644 – oznacza to, że właściciel pliku będzie miał do niego prawo odczytu i zapisu a grupa oraz pozostali będą mieli tylko prawo do odczytu. Dla tej samej maski katalogi otrzymają uprawnienia 755[2].

Katalogi

Katalogi są specjalnym rodzajem plików z prawem wykonywania. Aby odróżnić je od zwykłych plików, wykorzystywana jest dodatkowa wartość podawana przed bitami uprawnień[2].

Przypisy

  1. Artur Pyszczuk's blog... umask - Maska użytkownika (ang. user mask) [dostęp 2012-07-07]
  2. a b c What is Umask and How To Setup Default umask Under Linux? (ang.) [dostęp 2012-07-07]
  3. umask Man Page (ang.) [dostęp 2012-07-07]

Zobacz też

  • chmod
  • p
  • d
  • e
System plików
  • cat
  • chmod
  • chown
  • chgrp
  • cksum
  • cmp
  • cp
  • dd
  • du
  • df
  • file
  • fsck
  • fuser
  • ln
  • ls
  • mkdir
  • mount
  • mv
  • pax
  • pwd
  • rm
  • rmdir
  • split
  • tee
  • touch
  • tree
  • type
  • umask
Procesy
  • at
  • bg
  • chroot
  • cron
  • fg
  • kill
  • killall
  • nice
  • pgrep
  • pkill
  • ps
  • pstree
  • time
  • top
Środowisko użytkownika
Przetwarzanie tekstu
Wbudowane w powłokę
  • alias
  • cd
  • echo
  • test
  • unset
  • wait
Komunikacja
Wyszukiwanie
Dokumentacja
  • man
Różne
  • bc
  • dc
  • cal
  • expr
  • false
  • lp
  • od
  • sleep
  • true