Как настроить права доступа с помощью chmod?
Команда chmod
в Unix-подобных операционных системах используется для изменения прав доступа к файлам и директориям. Права доступа могут быть заданы для трех категорий пользователей: владельца файла, группы и остальных пользователей.
Для этого нужно в терминале ввести команду, например:
chmod 755 имя_файла
Примеры числовых значений:
777
— все права для всех (rwxrwxrwx
)755
— полный доступ для владельца, чтение и выполнение для группы и остальных (rwxr-xr-x
)644
— чтение и запись для владельца, чтение для группы и остальных (rw-r--r--
)600
— чтение и запись только для владельца (rw-------
)
В восьмеричном формате права задаются с помощью чисел:
4
— право на чтение2
— право на запись1
— право на выполнение
Суммируя эти значения, мы можем установить права для каждой категории:
- Первый символ — права владельца
- Второй символ — права группы
- Третий символ — права остальных
Примеры:
Установить права
rwx
для владельца,r-x
для группы иr--
для остальных:chmod 754 файл
Установить права
rw-
для всех:chmod 666 файл
Чтобы посчитать числовое значение для команды chmod
, нужно знать, какие права мы хотим установить для владельца, группы и остальных пользователей. Каждое право имеет свое числовое значение:
- Чтение (r) — 4
- Запись (w) — 2
- Выполнение (x) — 1
Шаги для расчета
Определим права для каждой категории пользователей:
- Владелец (u)
- Группа (g)
- Остальные (o)
Сложим значения для каждой категории**:
- Если вы хотите установить права на чтение и запись для владельца, то: Чтение (4) + Запись (2) = 6
- Если вы хотите установить права на чтение и выполнение для группы, то: Чтение (4) + Выполнение (1) = 5
- Если вы хотите установить только право на чтение для остальных, то: Чтение (4) = 4
Запишем итоговые значения. Например, если для владельца мы хотим 6, для группы 5, а для остальных 4, то итоговое значение будет 654
.
Еще пример:
Допустим, мы хотим установить следующие права:
- Владелец: чтение и запись (rw-)
- Группа: только чтение (r--)
- Остальные: никаких прав (---)
Расчет будет следующим:
- Владелец: 4 (чтение) + 2 (запись) = 6
- Группа: 4 (чтение) = 4
- Остальные: 0 (нет прав) = 0
Итоговое значение будет 640
.