На відмінність від числової нотації символьна нотація вказує не права, а зміни прав. Нотація складається з 3 елементів, вказаних в слідкуючій послідовності: чиї права змінювати, яким чином, та які саме права.
Таблиця 5 – Спецсимволи командного рядка
Чиї права змінювати | Яким чином | Які саме права |
u (власника) g (групи) o (всіх інших) a (всіх трьох категорій) | +(добавити) - (прибрати) | r w x |
= (зробити такими ж) | u (як у влсника) g (як у групи) o (як у всіх інших) | |
u g | + - | s (SUID або SGID) |
u | + - | t (Sticky bit) |
Приклади:
1) Добавити групі право на запис:
chmod g+w file
2) прибрати у інших права на запис та виконання:
chmod o-wx file
3) Добавити власнику і групі права на читання і запис:
chmod ug+rw file
4) Встановити права інших такими ж, як у групи
chmod o=g file
5) Встановити права інших і групи такими ж, як у власника
chmod og=u file
6) Декілька змін можна перераховувати через кому:
Добавити власнику право на виконання, а у групи та інших прибрати право на запис:
chmod u+x,go-w file
Команду chmod можна використовувати з числовим значенням:
|
|
chmod 0700 <файл>
Приклад.
Встановити атрибути читання і записи для власника і групи-власника та тільки читання для інших користувачів:
$ chmod 0664 gb??.doc
Виконайте слідуючі завдання:
1. Створити файл, для якого будуть встановлені права:
rw – для власника та інших
для всіх rwx
2. Прибрати право на запис та читання для інших
3. Дозволити доступ до свого домашнього каталогу
4. Перейти в каталог сусіда і створити там файл
5. Створити вкладені в дір-і dir 1→ dir 11→dir 111
6. Дати можливість всім записати файл в dir 111
7. Створити файл в каталозі dir 111 сусіда
8. Зробити свій каталог недоступним
Створення маски – umask
umask 0xxx
аргумент – числовий формат прав доступу
без аргумента - видає діючу маску
Виконайте слідуючі дії:
1. Створити новий каталог і файл. Подивитися, які права система їм назначила
touch f; ls -l f
mkdir D; ls -l D
2. Подивитися, яка в системі встановлена маска
umask → 0002
3. Маска накладається на першорядно встановлені в системі права. Частіше за все це права
каталог rwx rwx rwx
файл rw- rw- rx-
Маска 0002 являє собою фільтр
000 000 000 001
Права представимо в двійковому виді;
к 111 111 111
ф 110 110 110
Накладення маски являє собою додавання по mod 2
м 000 000 010
+
к 111 111 111
ф 110 110 110
к 111 111 101
ф 110 110 100
Отримані права переводимо в звичайний вид:
к rwx rwx r-x
ф rw- rw- r --
Це ми і отримуємо при першорядному створенні файлів і каталогів. Якщо маску змінити, права, які даються за умовчанням, будуть іншими.
umask 022
d: rwx rwx rwx
f: rw- rw - rw-
m: - - - - w - - w-
d: rwx r - x r - x
f: rw- r - - r - -