Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OSISP_shpory.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.14 Mб
Скачать

1. Файлы и файловая система в ос unix. Права доступа (3, 14) – 18

Файл – это самая простая и фундаментальная абстракция в операционных системах Unix, в которых как бы придерживаются такого предположения, что всё есть файл. Это значит, что большая часть взаимодействий реализована через запись и чтение в файл. Даже в тех случаях, когда интересующий нас объект нельзя назвать файлом в общепринятом смысле этого слова.

Файлы в этой системе также определяют привилегии пользователя, так как права пользователя в большинстве случаев контролируются с помощью прав доступа к файлу.

Файлы обеспечивают доступ к периферийным устройствам. Все программы, которые выполняются в системе, включая прикладные задачи пользователя, системные процессы, ядро системы являются исполнительными файлами.

Файлы в Unix системах организуются в древовидной структуре называемой Файловой системой. Говорят что файловая система это набор файлов и каталогов в формальном виде и допустимой иерархии. Каждый файл имеет имя, определяющее его расположение в файловой системе.

Корнем этого дерева является корневой каталог. Его имя ‘ / ’

Все файлы имеют имена, которые представляют собой путь (список каталогов который необходимо пройти, чтобы достигнуть файла).

Пример:

/home/stud/prog1.c

Имя, начинающееся с / называют полным именем файла. Можно указать относительное имя файла тогда поиск будет начат от текущего каталога.

Важно, что имя файла является атрибутом файловой системы, а не набора данных, на каком- то носителе. Каждый файл имеет метаданные для связи с ним.

Метаданные – набор данных определяющих характер файла.

Они хранятся в индексных дескрипторах, и имя файла в файловой системе является указателем на индексный дескриптор inode.

Все файлы в Unix имеют двух владельцев (пользователь и группа пользователей). Пользователь владеющий файлом может не принадлежать к группе владеющей файлом.

>ls -l

Выводит полную информации о каталоге.

Права на файл назначаются владельцем файла. Владельцем созданного файла назначается идентификатор пользователя того процесса который создал файл. Правило назначения группы: в большинстве ОС группой владельцем становится первичная группа пользователя, которая инициировала создание файла. Владение файлом определяют набор операций, которые пользователь может совершить с файлом. Некоторые действия над файлом (изменение прав доступа или изменение владельца файла) может определять только владелец файла или root. Но ряд других операций (чтение, запись) отдельно определены для разных категорий пользователей.

В ОС Unix существует три базовых класса доступа к файлу:

- пользователь, владеющий файлом;

- пользователь, относящийся к группе владеющей файлом;

- остальные (остальные кроме root).

И для каждого класса устанавливаются 3 типа прав доступа:

- чтение;

- запись;

- выполнение.

Пример:

- rwx r-x rw-

Владелец группа остальные

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

Пример:

>chmod a+w text1.t

>chmod g+x-w file1.c; prog2.c

>chmod u+w,og+r-w prog1.c

>chmod 755 file3.t

где d - каталог

p - FIFO

b - блочно-ориентированное устройств ввода вывода.

с - символьно-ориентированное устройство ввода вывода.

Для просмотра содержимого необходимо w. Для изменения содержимого необходимо r. Для запуска на выполнение необходимо x.

Интерпретация прав доступа по отношению к каталогу

Право чтения каталога позволяет получить только имена файлов находящихся в этом каталоге. Для подробной информации необходимо обращаться к метаданным файла, а это требует права на выполнение по отношению к каталогу. Права на запись по отношению к каталогу необходимо при создании и удалении файла. При этом не учитываются права доступа к самому файлу.

Порядок действия ОС при проверке прав доступа. При инициализации действий над файлом выполняется проверка прав доступа:

Если это root действие разрешается и дополнительной проверки не производится.

Если действие запрашивается владельцем файла, то проверяется наличие права на запрашиваемое действие.

Если действие запрашивается пользователем, входящим в группу владеющую файлом, то проверяется наличие права на запрашиваемое действие.

Если действие запрашивается другим пользователем, то проверяется наличие права на запрашиваемое действие.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]