14 нояб. 2012 г.

Права доступа в ОС Linux


Тут немного расскажу о том, какие бывают права доступа на файлы для пользователей Linux. Каждый файл или папка в Linux имеют свои права на доступ к нему.
В системе Linux существуют три типа прав - это чтение (r), запись (w), выполнение (x)
Все эти права определяются для трех типов пользователей: владельца (u), группы (g), всех других (o)
При назначении прав на файл или папку принято использовать восьмеричную систему счисления. Так, например, выглядит текстовое представление прав:

- rwxr- - r - -
0123456789

где символ в позиции 0 может быть равен
"-" -  обычный файл
"d" - папка
"l" - ссылка
символы в позициях 1-3: "rwx" определяют права владельца
символы в позициях 4-6: "r - -" определяют права для группы пользователей
символы в позициях 7-9: "r - -" определяют права для всех остальных



Правам на выполнение соответствует число 1,
на запись - 2,
на чтение - 4,
таким образом, права на файл можно вычислить простым суммированием. Например, если требуется выполнение (1) и чтение (4), то получаем 1+4=5
Пример 1:
Файл имеет права 644, это значит, что владелец имеет права на
      -- владелец (u) чтение и запись
      -- группа (g) только чтение
      -- другие (o) только чтение
Пример 2:
Файл имеет права 700, это значит, что владелец имеет права на
      -- владелец (u) все права
      -- группа (g) ничего не может
      -- другие (o) ничего не может

Теперь нужно упомянуть команду, с помощью которой можно менять права файлов и папок, это команда chmod

    chmod [-R] права файл/папка

"-R" означает примение прав рекурсивно ко всем файлам и подпапкам
Пример использования:

    chmod -R 755 folder/

Есть возможность менять права не целиком, а лишь добавлять или отменять права только определенным группам пользователей
используя символы вместо восьмеричных чисел.
   "u" - пользователь/владелец
   "g" - группа пользователей
   "o" - остальные пользователи
   "a" - все группы пользователей

Формат прав для файлов и папок [ugoa][[+-=][perms], ...

Примеры использования:
   chmod -R a+x folder/  выполнение для всех групп рекурсивно
   chmod +x file             выполнение для всех

Информация взята с сайта http://www.zzee.com/solutions/linux-permissions.shtml

Комментариев нет:

Отправить комментарий