Для кожного файлу або каталогу в никсах задаються права які визначають хто і які дії може робити з цим файлом/каталогом. Доступ до файлу або каталогу може визначатися трьома способами: право на читання, право на запис, право на запуск. Змінювати ці права може тільки власник файлу. Також існують три категорії користувачів, які можуть мати доступ до файлу або каталогу: власник, група, інші. Власник файлу-це той, хто створив цей файл. Відповідно три набори прав доступу на читання, запис і виконання для трьох категорій користувачів, власника, групи та інших, утворюють дев’ять типів дозволів на дії з файлом.

власник
/ група
/ /
-rw-r–r– 1 user rush 207 Feb 12 00:47 my_file
| |/|/|/
| | | права для інших
| | права для групи
| права для власника
тип файлу

Ось приблизні права на файл. Тепер трохи детальніше.
Відсутність права позначається дефісом (-). Право на читання ® Право на запис (w) і право на виконання (x)
Перший символ позначає тип файлу: Якщо стоїть дефіс (-) то це файл, якщо (d) то це каталог.
Наступні три символи (rw-) це права для власника файлу. В даному випадку у нього є права на читання ® і запис (w) в файл.
Другий трехсимвольный набір визначає права для групи (r–). В даному випадку дозволено лише читання файла.
Третій набір визначає права для інших користувачів (r–). Тільки читання.

Команда зміни прав.
Для зміни прав доступу до файлу використовується команда chmod.
Синтаксис команди: chmod опції ім’я_файлу

Опції команди:
+ — установка права доступу
— — скасування права доступу
= — весь набір прав доступу
r — встановлення права на читання
w — встановлення права на запис
x — встановлення права на запуск
u — права для власника
g — права для групи
o — права для інших
a — права для всіх (діє за замовчуванням)

Приклади:
chmod +x-w my_file — встановлює право на виконання і прибирає право на запис для всіх категорій. (можна і так: chmod a+x-w my_file)

chmod g+rw my_file — встановлює право на запис і читання (+rw) для групи (g)

chmod o+r-wx my_file — встановлює право на читання (r) скасовує права на запис і виконання (-wx) для інших (o)

chmod u+x my_file — права на виконання (+x) для власника (u)

Крім символьного методу при якому використовуються символи r,w,x можна застосовувати також абсолютний метод при якому використовується двійкова маска і для зміни прав використовуються цифри.
При такому способі права встановлюються з допомогою трьох цифр, які визначають права відразу для трьох категорій (власник, група, інші)
Для розуміння даного методу необхідно знати як вісімкові цифри перетворюються у свої двійкові еквіваленти:

вісімковий формат двійковий формат
0
1
2
3
4
5
6
7 000
001
010
011
100
101
110
111

Більш докладно на прикладі:
chmod 540 my_file

5 — права для власника
5 = 101 = 1 — право на читання, 0 — немає права на запис, 1 — право на виконання

4 — права для групи
4 = 100 = 1 — право на читання, 0 — немає прав на запис, 0 — немає прав на виконання

0 — права для інших
0 = 000 = 0 -немає прав на читання, 0 — немає прав на запис, 0 — немає прав на виконання

Перша вісімкова цифра визначає права для власника, друга — для групи, третя — для інших.

540
/ |
для власника / | для інших
для
групи

Двійковий формат цифри визначає за розрядами зліва на право право на читання, право на запис, право на виконання.

5
=
101
/ |
читання / | виконання
запис

Якщо двійковий розряд 0 дозвіл відсутній, якщо 1 то дозвіл встановлено.

Зміна власника файлу або каталогу.
Доступ до файлу можуть мати всі користувачі, але права доступу для нього иожет змінювати тільки його власник. Щоб передати контроль над правами іншого користувача можна використовувати команду chown

Синтаксис: chown користувач файл
Наприклад: chown user my_file — Передає контроль над файлом my_file користувачу user

Зміна групи володіє файлом.
Змінити групу можна за допомогою команди chgrp

Синтаксис: chgrp група файл
Наприклад: chgrp group1 my_file

Можна обьеденить дія команди chgrp з командою chown вказавши групи після нового власника, розділивши їх двокрапкою:

chown user:group my_file

Фуф… все!
cya…