Настройка Umask в Linux
При создании файла или директории, среда операционной системы присваивает им определенные права доступа по умолчанию, и umask
- это пользовательская маска user mask
, которая используется для определения конечных прав доступа.
В процесс определения режима доступа ко вновь создаваемым файлам и каталога вмешивается так называемая маска umask
, значение которой равно 0002
или 0022
.
В операционной системе Linux базовые права для директории равны 0777
или rwxrwxrwx
, а для файла 0666
или rw-rw-rw
.
umask 0002
используется для root
пользователя. С этой маской права по умолчанию, для директории, равны 775
, а для файла 664
.
umask 0022
используется для обычного пользователя. С этой маской права по умолчанию, для директории, равны 755
, а для файла 644
.
Подсчет прав
Как посчитать и определить права файла для маски 022
:
- Права по умолчанию: 666
- Вычитаемое значение umask: 022 (-)
- Итоговые права: 644
Как посчитать и определить права директории для маски 022
:
- Права по умолчанию: 777
- Вычитаемое значение umask: 022 (-)
- Итоговые права: 755
Установка umask по умолчанию
Umask
для всех пользователей по умолчанию устанавливается в файлах /etc/.bashrc
или /etc/.profile
.
Проверяем текущее значение маски:
umask
Установка нового значения маски 0002
:
umask 0002
По умолчанию настройки umask
будут применяться только к текущей сессии. При следующем входе в систему любым новым файлам и каталогам будут заданы исходные параметры, установленные дистрибутивом системы. Чтобы настройки umask оставались в силе даже после перезагрузки, их нужно внести в файлы.
Меняем значение umask
по умолчанию на всегда для root
:
sudo nano /etc/login.defs
Измените следующую строку:
umask 000
Меняем значение umask
по умолчанию на всегда для всех пользователей:
sudo nano /etc/profile
Добавьте следующую строку в начале файла:
umask 000
Пример
Цифровое обозначение состоящие из трех чисел распределяется по формуле Владелец - Группа - Остальные
, просто нужно запомнить какая цифра за что отвечает:
0
никаких прав1
только выполнение2
только запись3
выполнение и запись4
только чтение5
чтение и выполнение6
чтение и запись7
чтение запись и выполнение
Пример umask
с различными наиболее часто используемыми значениями и результирующие итоговые права:
Значение umask |
Файл |
Директория |
---|---|---|
0000 |
666 |
777 |
0002 |
664 |
775 |
0022 |
644 |
755 |
0007 |
660 |
770 |
0077 |
600 |
700 |
0027 |
640 |
750 |
0277 |
400 |
500 |