Редактирование: UNИX, весна 2008, 07 лекция (от 26 марта)

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 2: Строка 2:
'''Диктофонная запись:''' http://esyr.org/lections/audio/uneex_2008_summer/uneex_08_03_26.ogg
'''Диктофонная запись:''' http://esyr.org/lections/audio/uneex_2008_summer/uneex_08_03_26.ogg
- 
-
= Еще о файлах и правах доступа =
 
-
== Жесткие ссылки ==
 
Жетские ссылки (hardlink) -- это записи имён в каталогах (мы помним, что каталог это тот же файл, только своего типа), которые ссылаются на один и тот же индексный дескриптор (inode) этой файловой системы. Все жесткие ссылки на файл выступают равноправными именами его. файл существует на диске до тех пор, пока не будет удалено последнее из его имён. Число имен файла отображается выводе команды ls -l, в первой позиции для каждого файла.
Жетские ссылки (hardlink) -- это записи имён в каталогах (мы помним, что каталог это тот же файл, только своего типа), которые ссылаются на один и тот же индексный дескриптор (inode) этой файловой системы. Все жесткие ссылки на файл выступают равноправными именами его. файл существует на диске до тех пор, пока не будет удалено последнее из его имён. Число имен файла отображается выводе команды ls -l, в первой позиции для каждого файла.
Строка 13: Строка 10:
<!-- 3. Если нужно условно говоря написать конфиг, но специфичность его такова, что это специфичной функции типа маллок, и там может быть например, что забивать --- это симлинк -->
<!-- 3. Если нужно условно говоря написать конфиг, но специфичность его такова, что это специфичной функции типа маллок, и там может быть например, что забивать --- это симлинк -->
-
== Cимвольные ссылки ==
+
== Два маленьких дополнения: символьные ссылки и ACL ==
Жёсткие ссылки это хороший инструмент, но у него есть два крупных недостатка:
Жёсткие ссылки это хороший инструмент, но у него есть два крупных недостатка:
Строка 25: Строка 22:
Может возникнуть такая специфическая задача. Может потребоваться отладочный конфиг-файлы, например, для функции malloc. В trusted системах бывает нужно, чтобы malloc всегда возвращал память чистую, заполненную нулями. Это можно настроить в некотором конфиг-файле и попросить malloc при каждом вызове читать настройки из этого файла. Однако же, действие это состоит из трех операций (открыть файл, прочитать настройки, закрыть файл), это много, особенно если вызовы malloc происходят часто. Известно, что символьной ссылке в качестве значения можно прописать все что угодно, это необязательно должен быть реально существующий файл. Так вот, можно прописать в неё нужную нам конфигурационную строчку, и тогда для чтения её потребуется не три файловых операции, а одна: readlink().
Может возникнуть такая специфическая задача. Может потребоваться отладочный конфиг-файлы, например, для функции malloc. В trusted системах бывает нужно, чтобы malloc всегда возвращал память чистую, заполненную нулями. Это можно настроить в некотором конфиг-файле и попросить malloc при каждом вызове читать настройки из этого файла. Однако же, действие это состоит из трех операций (открыть файл, прочитать настройки, закрыть файл), это много, особенно если вызовы malloc происходят часто. Известно, что символьной ссылке в качестве значения можно прописать все что угодно, это необязательно должен быть реально существующий файл. Так вот, можно прописать в неё нужную нам конфигурационную строчку, и тогда для чтения её потребуется не три файловых операции, а одна: readlink().
-
== Access Control List (ACL) ==
+
=== Access Control List (ACL) ===
В UNIX используется субъект-субъектная модель разграничения доступа со множественным субъектом. Все объекты в файловой системе нумеруются по одному и тому же списку --- множественных субъектов. Субъекты бывают как уникальные --- пользователи, так и множественные, т.е. группы. И все права субъектов вычисляются по простой арифметике (3x3, было на прошлой лекции). Всё это в общем довольно естественный способ задания прав доступа, тем не менее, существует несколько use case'ов (случаев использования), когда субъект-субъектная модель работает неудобно.
В UNIX используется субъект-субъектная модель разграничения доступа со множественным субъектом. Все объекты в файловой системе нумеруются по одному и тому же списку --- множественных субъектов. Субъекты бывают как уникальные --- пользователи, так и множественные, т.е. группы. И все права субъектов вычисляются по простой арифметике (3x3, было на прошлой лекции). Всё это в общем довольно естественный способ задания прав доступа, тем не менее, существует несколько use case'ов (случаев использования), когда субъект-субъектная модель работает неудобно.

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Личные инструменты
Разделы