Содержание

Skip to end of metadata
Go to start of metadata

Umask — функция среды POSIX, изменяющая права доступа, которые присваиваются новым файлам и директориям по умолчанию. 


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 строку:

/etc/pam.d/common-session
session optional pam_umask.so

Для установки глобальной маски прав доступа, можно передать параметр pam_umask.so:

/etc/pam.d/common-session
session optional pam_umask.so umask=0022

Или указать значение в  /etc/default/login:

/etc/default/login
UMASK=002

Так же, можно изменить данный параметр в /etc/login.defs.

Для отдельного пользователя в поле GECOS этого пользователя можно указать значение маски командой:

chfn --other='umask=002' username
Чтобы изменения вступили в силу, необходимо перелогиниться.

  • No labels