Меню Рубрики

Linux umask по умолчанию

Что такое umask и как установить права на файл или директорию

Очередной пост из серии: всегда хотел это понять, но вечно что-то мешало.
Подглядел вот здесь, довольно легкое и доходчивое объяснение (эдакий ликбез, не путать с академическим толкованием) того, как посчитать umask, если знаешь какие права в итоге должен иметь твой файл или директория. Как правило, при администрировании Linux систем, нам больше всего приходится сталкиваться с фактическими правами, а вот с umask возникают некоторые трудности. Автор оригинальной статьи сам немного запутался, но я все исправил.

Что такое umask?

При создании файла или директории, среда операционной системы присваивает им определенные права доступа по умолчанию, и umask – это пользовательская маска (user mask), которая используется для определения конечных прав доступа.

Как установить umask по умолчанию?

Сперва, нам необходимо понять, как узнать текущее значение нашей umask. Сделать это очень просто:

Umask для всех пользователей по умолчанию устанавливается в файлах /etc/.bashrc или /etc/.profile.
После процедуры начальной инсталляции Linux, по умолчанию она равна 0022 (022) или 0002 (002).
Если в этих файлах, мы просто добавим или изменим строку с umask:

То при следующем входе мы получим новое значение umask. Если выполним эту команду в текущем сеансе, то, соответственно, изменим значение для маски на время работы сеанса.

Что такое umask равное 0022 и 0002?

В операционной системе Linux базовые права для директории равны 0777 (rwxrwxrwx), а для файла 0666 (rw-rw-rw).

По умолчанию umask 0002 используется для обычного пользователя. С этой маской права по умолчанию, для директории, равны 775, а для файла 664.

Для суперпользователя (root) umask по умолчанию равна 0022. С этой маской права по умолчанию, для директории, равны 755, а для файла 644.

Как посчитать (определить) права файла для маски 022 (пользователь root):
Права по умолчанию: 666
Вычитаемое значение umask: 022 (-)
Итоговые права: 644

Как посчитать (определить) права директории для маски 022 (пользователь root):
Права по умолчанию: 777
Вычитаемое значение umask: 022 (-)
Итоговые права: 755

Итоги

Таким образом: umask “отбирает” необходимые права в нужных разрядах: 7-ка полностью все, 2-ка права на запись, 0 оставляет по умолчанию. По-моему очень просто и понятно.

К примеру вот такие команды:

приведут к такому результату:

И напоследок, пример umask с различными (наиболее часто используемыми) значениями и результирующие (итоговые) права:

Значение
umask
Файл Директория
Итог Владелец Группа Остальные Итог Владелец Группа Остальные
0000 666 rw- rw- rw- 777 rwx rwx rwx
0002 664 rw- rw- r– 775 rwx rwx r-x
0022 644 rw- r– r– 755 rwx r-x r-x
0007 660 rw- rw- 770 rwx rwx
0077 600 rw- 700 rwx
0027 640 rw- r– 750 rwx r-x
0277 400 r– 500 r-x

Калькулятор umask

Конечно-же, ограниченный упрощенный метод подсчета и приведенная таблица не способны покрыть множество вариантов значений umask, поэтому, для более полной и четкой картины, предлагаю вам воспользоваться следующим наглядным инструментом: «Онлайн umask калькулятор»

Источник

Information Security Squad

stay tune stay secure

👺 Linux команда umask с примерами, числовыми и символическими представлениями

Команда umask используется для установки прав доступа к файлам и папкам по умолчанию в операционной системе Linux.

Права доступа к файлам и папкам важны, потому что разрешение позволяет или запрещает доступ, чтение, запись и выполнение данного файла различным пользователям, группам и другим пользователям.

В этом уроке мы узнаем, как использовать команду umask для установки разрешений на чтение, запись и выполнение по умолчанию.

Синтаксис

Синтаксис команды umask очень прост, когда мы просто предоставляем разрешения.

Права доступа

Linux — это файловая операционная система, в которой есть 3 разрешения.

  • r означает чтение, т.е. указано чтение данного файла или папки
  • х означает выполнение, т.е. указано выполнение данного файла. Поскольку папки не могут быть выполнены, мы не можем использовать это разрешение для папок или каталогов.
  • w означает запись, т.е. запись или добавление в указанный файл или папку.

Разрешения также имеют числовое представление, как показано ниже.

читать значение + писать значение + выполнять значение = числовое
значение:
символьный эквивалент:
1 1 x
2 2 w
2 1 3 wx
4 4 r
4 1 5 rx
4 2 6 rw
4 2 1 7 rwx

Например, если мы хотим сделать данный файл читаемым и исполняемым, но не доступным для записи, мы можем использовать числовое значение 5 или символьное rx.

Операционные системы Linux используют 3 категории пользователей, такие как владелец, группа и другие.

  • владелец — это пользователь, которому принадлежит файл полностью. Этот пользователь обычно имеет все права, такие как чтение, запись и выполнение. Но в некоторых случаях для предотвращения несчастных случаев некоторые разрешения могут быть изменены или удалены.
  • группа — группа, которой принадлежит данный файл или каталог. Например, группа sudoer владеет некоторыми административными файлами, где они могут использовать их в соответствии со своими разрешениями.
  • другие означает всех других пользователей, кроме владельца и группы. Это может быть полезно для сущностей, которые не имеют никакого отношения к данному файлу. Как правило, мы можем сделать так, чтобы файл не имел права на чтение, запись или выполнение файла для других пользователей. Но в некоторых случаях мы можем предоставить разрешение на чтение.

Мы изучили использование по умолчанию пользователя и разрешения для операционных систем Linux.

Команда umask использует этих пользователей и права немного отличаются.

На самом деле значения разрешений работают немного по-другому.

Мы делаем побитовую операцию над значениями разрешений для использования с umask.

Например, чтобы установить разрешение 775 для разрешения по умолчанию, нам нужно предоставить 002 команде umask.

Это может создать некоторые проблемы и ошибки во время использования команды umask, но мы можем проверить с помощью опции -S обычные значения разрешений для текущих файлов и папок.

Мы можем видеть, что 0022 равен разрешениям: пользователю rwx, группе rx и другим rx.

Мы можем использовать следующую таблицу для установки представления цифр разрешений umask.

Umask цифра разрешения по умолчанию для файлов разрешения по умолчанию для каталога
rw rwx
1 rw rw
2 r rx
3 r r
4 w wx
5 w w
6 x x
7 не разрешено не разрешено

Вывод текущих разрешений в числовом формате

Мы можем напечатать текущие разрешения umask, которые покажут разрешения по умолчанию для файлов и папок, как показано ниже.

Вывод текущих разрешений в символьном формате

Мы можем использовать опцию -S с командой umask, чтобы вывести список текущих прав доступа к файлам и папкам.

Установить разрешение

Теперь мы установим разрешения по умолчанию для файлов и папок с помощью команды umask.

Как выяснилось ранее, мы будем использовать права доступа типа umask.

В этом примере мы установим права пользователя на чтение + запись + выполнение, групповое чтение + выполнение и другие ничего.

Другой способ — использовать следующий синтаксис команды

Удалить разрешение

Мы также можем удалить существующие разрешения для владельца, группы или других лиц.

В этом примере мы удалим разрешение на выполнение группы. g используется для группы, а x используется для выполнения.

Источник

RTFM.WIKI

Ordnung muß sein. Ordnung über alles (18+)

User Tools

Site Tools

Sidebar

Навигация

Линкшэринг

ALARM!

Добавить новую страницу

Table of Contents

Что такое umask и как установить права на файл или директорию

Как установить umask по умолчанию?

Узнать текущее значение вашей umask можно просто:

Umask для всех пользователей по умолчанию устанавливается в файлах /etc/.bashrc или /etc/.profile. После процедуры начальной инсталляции Linux он равен 0022 (022) или 0002 (002).
Просто добавьте или измените строку с umask:

Изменения вступят в силу при следующем входе.

Что такое 0022 и 0002?

По умолчанию umask 0002 используется для обычного пользователя. С этой маской права по умолчанию, для директории, равны 775, а для файла 664.

Для суперпользователя (root) umask по умолчанию равен 0022. С этой маской права по умолчанию, для директории, равны 755, а для файла 644.

Базовые права для директорий, это 0777 (rwxrwxrwx) и для файлов 0666 (rw-rw-rw).

Как посчитать (определить) права файла для маски 022 (пользователь root):
Права по умолчанию: 666
Вычитаемое значение umask: 022 (-)
Итоговые права: 644

Как посчитать (определить) права директории для маски 022 (пользователь root):
Права по умолчанию: 777
Вычитаемое значение umask: 022 (-)
Итоговые права: 755

Вывод

Таким образом umask «отбирает» необходимые права в нужных разрядах: 7-ка полностью все, 2-ка права на запись, 0 оставляет по умолчанию. По-моему очень просто и понятно.

К примеру вот такие команды:

приведут к такому результату:

И напоследок, пример umask с различными (наиболее часто используемыми) значениями и результирующие (итоговые) права:

Источник

Популярные записи

Elementary os vs linux deepin
Плеер iptv для linux
Завершить сеанс пользователя linux
Antix linux на русском
Vmware kali linux iso
Windows linux dual boot windows

Adblock
detector