Umask — функция среды POSIX, изменяющая права доступа, которые присваиваются новым файлам и директориям по умолчанию.
Данная статья применима к:
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7)
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.6)
- Astra Linux Special Edition РУСБ.10015-16 исп. 1 и исп. 2
- Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.5)
- Astra Linux Special Edition РУСБ.10265-01 (очередное обновление 8.1)
- Astra Linux Common Edition 2.12
Umask
Режим полного доступа для директорий — 777, для файлов — 666.
Umask указывает, какие биты следует сбросить в выставляемых правах на файл — каждый установленный бит umask запрещает выставление соответствующего бита прав. Исключением из этого запрета является бит исполняемости, который для обычных файлов зависит от создающей программы (трансляторы ставят бит исполняемости на создаваемые файлы, другие программы — нет), а для каталогов следует общему правилу.
umask 0 означает, что следует (можно) выставить все биты прав (rwxrwxrwx
), umask 777 запрещает выставление любых прав.
Pam_umask
В операционной системе специального назначения Astra Linux Special Edition за изменение маски прав доступа отвечает модуль pam_umask.
Модуль pam_umask пытается получить значение маски из следующих мест:
- значение umask= переданное как аргумент самому pam_umask.so
- umask= из поля GECOS пользователя
- значение UMASK= в /etc/default/login
- значение UMASK в /etc/login.defs
Активация модуля
Для активации модуля необходимо внести в конец файла /etc/pam.d/common-session строку:
session optional pam_umask.so
Для установки глобальной маски прав доступа, можно передать параметр pam_umask.so:
session optional pam_umask.so umask=0022
Или указать значение в /etc/default/login:
UMASK=002
Так же, можно изменить данный параметр в /etc/login.defs.
Для отдельного пользователя в поле GECOS этого пользователя можно указать значение маски командой: