Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

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

Информация
iconfalse

Оглавление




Информация
titleДанная статья применима к:
  • 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

Umask

Режим

— параметр операционной системы, регулирующий дискреционные права доступа, которые присваиваются новым (создаваемым) файловым объектам (файлам и каталогам) по умолчанию. 

Пример масок:

  • режим полного доступа для
директорий — 777, для файлов —
  • каталогов — 777;
  • режим разрешения чтения и записи для файлов — 666. 

Umask указывает, какие биты следует сбросить в выставляемых правах на файл — каждый маске доступа создаваемого файлового объекта. Каждый установленный бит umask запрещает выставление соответствующего бита правв маске. Исключением из этого запрета является бит исполняемости для файлов,  который для обычных файлов зависит от создающей программы (трансляторы ставят бит исполняемости на создаваемые файлы, другие программы — программы — нет), а для каталогов следует общему правилу.

umask 0 означает, что следует (можно) выставить все биты прав (rwxrwxrwx), umask 777 запрещает выставление любых прав.

Pam

Модуль pam_umask

В операционной системе специального назначения Astra Linux Special Edition за изменение маски прав доступа отвечает выбор значения umask осуществляет модуль pam_umask. Модуль pam_umask пытается получить значение маски из следующих мест:

Section
bordertrue
  • значение umask= переданное как аргумент самому pam_umask.so
  • umask= из поля GECOS пользователя
  • значение UMASK=  в /etc/default/login
  • значение UMASK  в  /etc/login.defs


Активация модуля pam_umask

Для активации модуля необходимо внести в конец файла /etc/pam.d/common-session строку:

session optional pam_umask.so
Блок кода
title/etc/pam.d/common-session

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

optional pam_umask.so umask=0022
Блок кода
title/etc/pam.d/common-sessionsession

Или указать значение в  в файле /etc/default/login (создать файл, если его нет):

Блок кода
title/etc/default/login
UMASK=002

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

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

Command
sudo chfn --other='umask=002' username

Чтобы изменения вступили в силу , необходимо перелогиниться.перезапустить пользовательскую сессию.

Команда umask

Получить текущее значение umask в текущей сессии можно командой:

Command
umask

Изменить значение umask в текущей сессии можно командой:

Command
umask <новое_значение>