Управление правами доступа

Linux - многопользовательская операционная система. Это означает, что несколько пользователей могут работать одновременно, решая различные задачи и совершенно не мешая друг другу. Многопользовательская среда предполагает наличие механизма регулирования прав доступа к любому ресурсу в системе. Существует три типа прав доступа: на чтение, запись и исполнение. Каждый файл имеет определенного владельца и группу, увидеть это можно с помощью команды ls -l:

$ ls -l
-rw-r--r-- 1 kolya users 0 Апр  5 03:12 foo

В данном случае владельцем является kolya, а группой файла - users. Первый (считая слева) символ говорит обычный ли это файл, каталог, символьное устройство, сокет или любое другое псевдофайловое устройство. В нашем случае -, указывает на обычный файл. Следующие три символа (в данном случае это rw-) задают права доступа владельца файла. Затем идут права группы, которой принадлежит файл (r--). Последняя тройка (r--) определяет права для всех остальных. Права сгруппированы три по три, соответственно чтение/запись/выполнение для владельца/группы/всех остальных. Численное и символьное представление:

Значение

Права доступа

Список файлов каталога

0

Ничего не разрешено


1

Нельзя читать и писать, разрешено исполнять

--x

2

Нельзя читать и исполнять, разрешено писать

-w-

3

Нельзя читать, разрешено писать и исполнять

-wx

4

Разрешено читать, нельзя писать и исполнять

r--

5

Разрешено читать и исполнять, нельзя писать

r-x

6

Разрешено читать и писать, нельзя исполнять

rw-

7

Разрешено все

rwx

Права на устройства контролируются аналогичным образом. В Linux все устройства представлены в виде файлов, которые можно открывать, читать и писать в них. Эти специальные файлы содержатся в каталоге /dev.

Каталоги также являются файлами. К ним применимы те же права на чтение, запись и выполнение. Правда, в данном случае "выполнение'' имеет несколько другой смысл. Когда каталог помечен как "исполнимый'', это означает, что можно "зайти'' в него (с помощью команды cd, change directory). Это также означает, что в данном каталоге можно получить доступ к файлам, имена которых известны (конечно, если собственные права на файл разрешают такой доступ). Для управления правами используется команда chmod: Упрощенный синтаксис:

chmod изменение цель

в качестве изменения может выступать как цифровой код новых прав для файла:

chmod 777 foo

установит режим "можно все" для "всех" так и модификации, с использованием операторов +, - и = оператор + означает добавить права оператор - означает удаление прав

chmod -x foo

удалит право исполнения для всех пользователей так же, возможно целевое удаление или добавление прав, с использованием следующих обозначений:

u  Пользователь (User)
g  Группа (Group)
o  Другие (Other)
a  Все (All)

chmod g+r foo

добавит право чтения для группы Для смены владельца/группы используется команда chown:

chown владелец:группа цель

установит для целевого файла указанного владельца и группу. Для выполнения отдельных приложений с привилегиями суперпользователя предназначено sudo:

sudo приложение

Для перехода в режим суперпользователя используется команда su

su
пароль_суперпользователя
Размещено: 05.04.2007 03:44 Всего комментариев: 0
Автор: zeus Блог: zeus's blog
Тэги: chmod , права

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

Нет комментариев.

Пожалуйста войдите или зарегистрируйтесь чтобы оставлять комментарии.