Калькулятор Linux Umask
Вычисляйте значения Linux umask и просматривайте результирующие разрешения по умолчанию для новых файлов и директорий. Поддерживает восьмеричный ввод, предустановки и символьный вывод.
Ввод
Вывод
Документация
Что такое umask?
umask (маска режима создания файлов пользователем) — это параметр Linux и Unix, который контролирует разрешения по умолчанию, назначаемые вновь созданным файлам и директориям. Вместо прямого установления разрешений umask определяет, какие биты разрешений должны быть удалены из системных значений по умолчанию при создании нового файла или директории.
Система начинает с базовых разрешений 666 (чтение и запись для всех) для файлов и 777 (чтение, запись и выполнение для всех) для директорий. Затем umask вычитается побитово из этих значений по умолчанию с использованием логической операции AND-NOT, что дает итоговые разрешения. Например, при umask 022 новые файлы получают разрешения 644, а новые директории — 755.
Каждая цифра umask соответствует классу разрешений: первая цифра влияет на владельца, вторая на группу, а третья на остальных. Цифра 0 означает, что разрешения не маскируются, а 7 удаляет все разрешения для этого класса.
Описание инструмента
Калькулятор umask для Linux преобразует значение umask и базовое разрешение в результирующие эффективные разрешения в восьмеричной и символической нотации. Он также генерирует точную команду umask для shell, помогая системным администраторам, разработчикам и инженерам DevOps предварительно просмотреть результат любого umask перед его применением к shell, скрипту или конфигурации системы.
Примеры
| Umask | Base | Результирующее восьмеричное | Символическое |
|---|---|---|---|
| 022 | 666 | 644 | rw-r--r-- |
| 022 | 777 | 755 | rwxr-xr-x |
| 077 | 666 | 600 | rw------- |
| 027 | 777 | 750 | rwxr-x--- |
| 002 | 666 | 664 | rw-rw-r-- |
Возможности
- Вычисляет результирующие восьмеричные и символические разрешения для любого umask
- Поддерживает как 3-значные, так и 4-значные (с ведущим битом sticky/setuid) значения umask
- Предустановки часто используемых umask (022, 027, 077, 002, 007, 000)
- Предустановки базовых разрешений для файлов (666) и директорий (777)
- Генерирует готовую к использованию команду
umaskдля shell
Варианты использования
- Усиление безопасности сервера: Предварительно просмотрите более строгий umask, например
077, перед добавлением его в/etc/profileили конфигурацию shell пользователя, чтобы убедиться, что новые файлы приватные. - Общие среды разработки: Проверьте, что
002или007создает файлы с правами записи для группы в директориях совместных проектов. - Скрипты развертывания: Подтвердите, что umask, используемый в конвейерах CI/CD или точках входа контейнеров, будет создавать ожидаемые разрешения для логов приложений и загруженных ресурсов.
Как это работает
Итоговое разрешение вычисляется для каждого класса (владелец, группа, остальные) по формуле:
final = base AND (NOT umask)Каждая восьмеричная цифра обрабатывается независимо. Для цифры umask 2 (двоичное 010) и базовой цифры 6 (двоичное 110) результат равен 110 AND NOT 010 = 100, что равно 4 (только чтение). Ведущая цифра 4-значного umask контролирует специальные биты (setuid, setgid, sticky) и игнорируется при стандартном вычислении разрешений.
Советы
- Используйте
666как базовое значение, чтобы увидеть разрешения для новых файлов, и777для новых директорий. - Umask
000означает, что разрешения не удаляются — полезен только в строго контролируемых изолированных окружениях. - Чтобы сделать umask постоянным, добавьте сгенерированную команду в
~/.bashrc,~/.profileили/etc/profileв зависимости от требуемой области действия.