Что такое chmod

Каждый рано или поздно сталкивается с тем, что необходимо установить права доступа (CHMOD) для документов.
Чаще всего встречаются цифры 777 или 666. Вообще они могут принимать значения от 0 до 7. В основе расчёта лежит двоичная система исчисления. Если расписать цифры, то получится:

7 = 1 1 1
6 = 1 1 0
5 = 1 0 1
4 = 1 0 0
3 = 0 1 1
2 = 0 1 0
1 = 0 0 1
0 = 0 0 0

Как известно, единица соответствует утверждению (да), ноль - игнорированию (нет). Теперь определимся с тем, что утверждают и игнорируют эти комбинации цифр. Применяется такой порядок:

R W X
R - read, W - write, X - execute

Значит, документ с правом доступа:
7 разрешает R(читать) W(записывать, редактировать) X(выполнять)
6 разрешает R(читать) W(записывать, редактировать)
5 разрешает R(читать) X(выполнять)
4 разрешает R(читать)
3 разрешает W(записывать, редактировать) X(выполнять)
2 разрешает W(записывать, редактировать)
1 разрешает X(выполнять)
0 - ничего не разрешает

Но числа даются в виде 777, а не 7. Это необходимо для того, чтобы разным пользователям предоставлять разные права доступа:

Первая цифра относится к хозяину документа;
Вторая - к лицам, относящимся к группе;
Третья - к пользователям, не имеющим к нему отношения.

Значит, право доступа 754 даёт право:
Хозяину делать с ним всё, что захочется;
Лицам группы читать и выполнять;
клиенту только читать.

Comments powered by CComment

Designed by san © 2018