umask (user mask) – polecenie interfejsu POSIX, które odpowiada za ograniczanie praw dostępu do plików. 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.
Użycie
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.
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ń.
Przypisy
- ↑ Artur Pyszczuk's blog... umask - Maska użytkownika (ang. user mask) [dostęp 2012-07-07]
- 1 2 3 What is Umask and How To Setup Default umask Under Linux? (ang.) [dostęp 2012-07-07]
- ↑ umask Man Page (ang.) [dostęp 2012-07-07]