1.3. Права доступа к файлам
1.3. Права доступа к файлам
Давайте создадим файл, используя команду touch:
$ touch myfile
Теперь выполним команду ls -1:
$ ls -1 myfile
-rw?r--r-- 1 dave admin 0 Feb 19 22:05 myfile
Мы получили пустой файл, и, как и ожидалось, первый символ в строке режима свидетельствует о том, что это обычный файл. В результате выполнения большинства операций по созданию файлов образуются либо обычные файлы, либо символические ссылки (о них говорится ниже).
Права владельца Права группы Права остальных пользователей rw- r-- r--
Следующие три символа в строке режима (rw-) описывают права доступа к созданному файлу со стороны его владельца (пользователь dave). За ними следуют символы r--, указывающие на права группы, в которую входит этот пользователь (в данном случае он является членом группы admin). Последние три символа (r--) представляют собой права пользователей, не принадлежащих к данной группе.
Существует три вида разрешений:
r Право чтения данного файла w Право записи/изменения данного файла x Право выполнения данного файла, если он является сценарием или программой
Следовательно, строку режима для файла myfile необходимо интерпгретировать следующим образом:
- rw- r-- r-- Обычный файл Владелец может Пользователи указанной группы могут осуществлять только чтение этого файла Остальные пользователи также могут осуществлять только чтение этого файла осуществлять чтение и запись этого файла
Возможно, вы обратили внимание на то, что при создании файла myfile владелец не получил право выполнять данный файл. Это связано с ограничениями, установленными по умолчанию в системе. Ситуация прояснится чуть позже, когда мы изучим команду umask.
Рассмотрим несколько дополнительных примеров (табл. 1.2).
Таблица 1.2. Примеры строк режима
Строка режима Результат
r-- --- ---
Доступ к файлу разрешен только владельцу, который может читать содержимое файла, но не имеет права осуществлять запись в файл и выполнять его
r--r-- ---
Доступ к файлу возможен только для чтения и разрешен владельцу и всем пользователям группы, в которую он входит
r--r--r--
Любой пользователь может получить доступ к файлу для чтения, остальные действия запрещены
rwx --- ---
Владелец имеет полный доступ к файлу, для остальных пользователей файл недоступен
rwxr?x ---
Владелец имеет полный доступ к файлу; пользователи группы, в которую входит владелец, могут читать файл и запускать его на выполнение; для остальных пользователей файл недоступен
rwxr?x r?x
Владелец имеет полный доступ к файлу; остальные пользователи могут читать файл и запускать его на выполнение
rw?rw- ---
Владелец и пользователи группы, в которую он входит, могут осуществлять чтение и запись файла; для остальных пользователей файл недоступен
rw?rw?r--
Владелец и пользователи группы, в которую он входит, могут осуществлять чтение и запись файла; остальным пользователям разрешено только чтение файла
rw?rw?rw-
Все пользователи могут осуществлять чтение и запись файла