chmod
Команда chmod дозволяє встановлювати права доступу для файлів і каталогів
Щоб зробити файл виконуваним :
chmod +x script.sh
Після виконання цієї команди, ви зможете виконати цей файл, введенням шляху до нього або використовуючи команду
./
перед ім'ям файлу:./script.sh
Зверніть увагу, що вам може знадобитися право на виконання файлу, аби вам було дозволено використовувати команду
chmod
. Якщо у вас немає необхідних прав, ви можете використовуватиsudo
перед командоюchmod
Надати всі права для всіх:
chmod +rwx файл
Заборонити доступ для інших користувачів:
chmod go= файл
Тільки читання і запис для власника:
chmod u=rw файл
Дозволити виконання тільки для групи:
chmod g=x файл
Додати право на виконання для всіх:
chmod a+x файл
Встановлення SUID (Set User ID) для виконання файлу власником:
chmod u+s файл
Встановлення SGID (Set Group ID) для виконання файлу групою:
chmod g+s файл
Встановлення "sticky bit" для каталогу (запобігає видаленню чужих файлів):
chmod +t каталог
Комбінування дозволів:
chmod u=rw,go=rx файл
Також можна використовувати числовий метод для встановлення дозволів за допомогою команди chmod
. Кожен дозвіл визначається трьома числами, які вказують дозволи для власника, групи та інших користувачів. Кожне число відповідає сумі значень дозволів:
4
- Читання (Read)2
- Запис (Write)1
- Виконання (Execute)
Сумуючи ці значення, ви можете встановити потрібні дозволи.
Ось таблиця відповідності між числовими і літеральними значеннями дозволів для команди chmod
:
r
4
Читання
w
2
Запис
x
1
Виконання
s
4 (SUID), 2 (SGID)
Set User ID, Set Group ID
t
1
Sticky Bit
За допомогою цих значень ви можете конструювати літеральні представлення дозволів для команди chmod
. Наприклад:
rwx
відповідає7
(4 + 2 + 1),rw-
відповідає6
(4 + 2),r--
відповідає4
(тільки читання).
Ось кілька прикладів:
Надати всі права для всіх:
chmod 777 файл
Тільки читання і запис для власника, читання для групи та інших:
chmod 644 файл
Дозволити виконання для власника та групи, тільки читання для інших:
chmod 551 файл
Тільки виконання для всіх:
chmod 111 файл
Встановлення SUID (Set User ID) та SGID (Set Group ID) для власника та групи відповідно:
chmod 4755 файл
Встановлення "sticky bit" для каталогу:
chmod 1777 каталог
Використання числових значень може бути зручним, особливо при автоматизації налаштувань дозволів за допомогою сценаріїв чи у випадках, коли потрібно швидко задати конкретні дозволи.
Також важливо зазначити, що при встановленні SUID, SGID та "sticky bit" числові значення можуть включати додаткові біти. Наприклад, 4755
встановлює SUID, що додає 4000 до числа прав доступу.
Last updated