Команда chmod изменяет атрибуты защиты (права доступа, режим доступа к файлу) заданного файла (файлов) в соответствии с вновь заданными в команде.
Рис. 9. Права доступа к файлу.
Атрибуты защиты могут быть заданы в числовом или символьномвиде.
а). В числовом виде атрибуты защиты задаются в виде восьмеричного числа, схема формирования которого приведена на рисунке 10:
Рис. 10. Схема формирования атрибутов защиты файла в числовом виде.
Сначала записываются права доступа в символьном виде (строка 1), затем формируется двоичная маска (строка 2), указывающая наличие права на чтение, запись или выполнение файла (для каждой категории пользователей). Наличие права обозначается цифрой '1', отсутствие - цифрой '0'. Далее для каждой категории пользователей полученное двоичное число записывается в виде 8-ричной цифры (строка 3).
Итоговое 8-ричное число используется в качестве параметра mode:
%chmode 644 f1
В результате выполнения этой команды будут установлены следующие права доступа к файлу f1: "rw-r--r--".
б) В символическом виде атрибуты защиты файла задаются в следующем формате:
[<пользователь>] <операция> [<атрибуты_защиты>]
Пользователь обозначается одним из следующих символов:
u владелец файла
g участник группы
o прочие (остальные) пользователи
a все категории пользователей
Если пользователь не указан, по умолчанию используется а (все пользователи).
Операция:
= определение (назначение) перечисленных прав доступа и отмена всех прочих для данного Пользователя. Если новые права не определены, отменяются существующие.
- отмена прав доступа
+ добавление прав доступа
Атрибуты защиты:
r разрешение чтения
w разрешение записи
x разрешение выполнения
Пример_1: %chmod a=r, u+w f1
Всемпользователям разрешено читать файл (a=r), владельцу разрешена запись в файл (u+w). Эта команда эквивалентна команде chmod 644 f1.
Упражнение. Установить для файлов из каталога lab1 следующие атрибуты защиты: для файла f1 – всем категориям пользователей разрешается читать и писать; для файла f2 – владельцу и прочим пользователям разрешается писать и читать; для файла f3 – разрешается читать файл только владельцу.