Скачиваний:
89
Добавлен:
10.05.2014
Размер:
11.4 Mб
Скачать

6. Раздел "Операционные системы"

Литература:

1.Забродин Л.Д. UNIX. Введение в командный интерфейс. М.: Диалог-МИФИ, 1994

2.Дунаев С. UNIX SYSTEM V: Общее руководство. М.: Диалог-МИФИ, 1995

3.Армстронг Д. Секреты UNIX. М.: Диалектика, 2000

4.Баурн С. Введение в операционную систему UNIX. М: Мир, 1987

5.Джейсон П. Операционная система UNIX: Настольный справочник. М.: ЛОРИ, 1997

1. Файловые системы современных операционных систем. Интерфейс пользователя для работы с файловой системой.

(ОС, Лекция 28.09.2003)

Система управления файлами:

Выделяют 2 уровня организации файлов.

логическая;

физическая.

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

Логическая организация файлов:

Под логической организацией файлов понимают совокупность структуры данных и методы доступа к ним.

Различают следующие структуры данных:

1.последовательную;

2.индексированную;

3.прямую;

4.библиотечную.

Для этих структур данных могут использоваться2 вида методов доступа:

1.Базисные методы. Базисные методы обеспечивают наиболее быстрый доступ к данным и используются для обмена большими порциями информации между внешними устройствами и оперативной памятью.

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

Физическая реализация файловой системы:

Физически файл состоит из отдельных записей. Записи бывают трёх типов:

1.фиксированной длины;

2.переменной длины;

3.записи неопределённой длины. Записи делятся на:

блокированные

не блокированные.

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

Структура файловой системы может быть:

1.линейной структурой (файлы располагаются строго последовательно);

2.библиотечной структурой (последовательно в разделах);

3.древовидной структурой (эта структура в настоящее время получила наибольшее распространение).

Файловая система ОС UNIX:

Наиболее полный контроль за параллельной работой многих пользователей в системе обеспечивает иерархическая древовидная структура файловой системы. Файловая система UNIX представляет собой единое дерево с корнем "/".

Всё дерево файлов разделяется на отдельные поддеревья и каждому пользователю предоставляется возможность создавать собственное поддерево файлов.

Файл: в UNIX все файлы рассматриваются как последовательность байт информации трёх типов:

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

2.Каталоги (d). Файлы, в которых содержатся списки других файлов в фиксированном формате. Все каталоги за исключением корневого содержат в себе:

"." - псевдоним текущего каталога и ".." - псевдоним родительского каталога. При создании нового файла система автоматически заносит информацию о нём в соответствующий каталог. При уничтожении файла информация о нём удаляется из соответствующего каталога.

3.Специальные файлы.

3.1.Каждый из них содержит описание и программу работы периферийных устройств. Специализированные файлы могут быть следующих типов:

3.1.1.с - байт-ориентированные - описывают внешние устройства, которые обмениваются информацией с оперативной памятью побайтно.

3.1.2.b - блок-ориентированные - описывают внешние устройства, которые обмениваются информацией с оперативной памятью блоками по 512 байт.

3.2.p - программный канал.

Все файлы организованы в единое дерево, в корне которого находится корневой каталог:

/

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

Имена файлов. В качестве имени файла используют последовательность символов (обычно не более 14-ти). Полное имя файла - это путь от корневого каталога к данному

файлу. По умолчанию путь отсчитывается от текущего каталога (в этом случае имя называется относительным).

В качестве символов имени могут использоваться любые символы ASCII, за исключением нескольких, имеющих специальный смысл. Точка является равноправным символом, за исключением её начального положения. Если имя начинается с точки, оно

обозначает скрытый файл:

.profile

Ссылки. Количество ссылок на файл указывает на возможность обращения к данному файлу из различных каталогов общего дерева. Минимальное количество ссылок для простого файла 1; для каталога - 2. При удалении файла счётчик ссылок уменьшается на 1, и как только он станет =0, файл становится недоступным.

Права доступа. Все пользователи в системе по отношению к любому файлу делятся на 3 категории:

1.владелец (владелец файла специальными командами может изменить права доступа к своему файлу для всех трёх категорий пользователей);

2.группа пользователей (как правило, с расширенными правами доступа к файлу), владелец файла специальной командой может изменить имя группы, ассоциированной с данным файлом;

3.все остальные пользователи.

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

/etc/passwd

/etc/group

Команды пользовательского интерфейса (диалоговый режим UNIX) при работе с файлами:

pwd - полное маршрутное имя текущего каталога;

ls -al - для чтения информации о файлах и каталогах (а - для скрытых); cat - вывод на экран содержимого файловили слияние файлов;

more - постраничный вывод на экран содержимого файла; tail - вывод нескольких последних строк файла; chmod - изменение прав доступа к файлу/каталогу;

umask - изменение прав доступа для вновь создаваемых файлов; chgrp - изменение группы, ассоциированной с данным файлом;

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

#mkdir имя каталога (создание каталога)

#cd перейти в другой каталог

#ls список файлов тек. директории

#rm file1 (Удалить file1)

# mv

file1

file2 (Переименовать file1 в file2)

#

cp

file1

dir1 (Скопировать файл 1 в директорию 1)

#

rmdir (Удаление пустой директории)

Cat (утилита конкатенации, слияния файлов)

#cat [ключи] [имя файла1 имя файла2….] аргументы могут отсутствовать. В этом случае программа считывает текст из стандартного файла ввода.

#cat > file1 (создание файла)

ввод текста

<Ctrl+D> (выход и сохранение)

# cat file1 (вывести содержимое file1 на экран)

2. Принцип защиты данных в операционных системах. Управление правами доступа к файлам.

Общие меры безопасности:

ограничение круга пользователей, знающих пароль;

формирование групп пользователей с различными правами доступа;

установка квот на использование дискового пространства и количество

процессов, создаваемых каждым пользователем.

Многопользовательский режим разделения ресурсов ЭВМ требует механизма защиты файлов от несанкционированных обращений к ним для чтения, записи и выполнения. Права процессов пользователей при доступе к файлу кодируются в атрибутах защиты файла. Атрибуты сопровождают каждый файл, хранятся в описателях файлов, на которые в каталоге имеются ссылки, и доступны для анализа и измен ения посредством специальных команд ОС UNIX. Атрибуты защиты файла определяют права доступа трем видам процессов:

процессам пользователя-владельца файла (user);

процессам группы владельца файла (group);

процессам остальных пользователей (other), не попавших ни в одну из двух

предыдущих категорий.

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

Категории доступа к файлам: r-чтение, w-запись, x-выполнение.

Чтение - для файла и каталогов допускает просмотр

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

Выполнение - простой файл, его содержимое может быть исполнено как программа. Каталог может стать текущим рабочим каталогом

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

Пример:

Chmod 000 serafim.

chmod u=x, g+wx, o-twx: f1

Владелец файла может кроме установки прав доступа к нему передать статус владельца

другому пользователю.

Chown <имя владельца> <имя файла> Chgroup – смена группы

В операционной системе существует возможность маскировать права доступа umask - она ограничивает возможность установления новых прав доступа к любому вновь созданному файлу umask g=r не позволяет установить права доступа выше чем на чтение (для группы). Существует возможность установить права для всех типов пользователей

a={u,g,o}.

Chmod 000 <файл> отменяет все права доступа.

Файл – это хранилище данных или канал связи с устройством, который храниться на устройстве массовой памяти (диск) и имеет имя.

Система UNIX обеспечивает тройственную структуру доступа к файлу. Для этого все пользователи делятся на 3 категории, которые называются: 1) user владелец; 2) group группа; 3) other остальные.

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

Для каждого файла или каталога возможны 3 типа доступа: 1) чтение (read); 2) запись

(write); 3)выполнение (execute).

Смысл доступа зависит от того происходит обращение к простому файлу или каталогу. Read для файлов означает, что можно прочитать содержимое файла или каталога. Write – содержимое файла или каталога может быть изменено.

Execute – данный файл может исполняться как программа, а каталог может стать текущим рабочим каталогом.

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

chmod [права владельца] [права группы] [права остальных польз.] имя файла Применяется две формы записи прав доступа– символьная и цифровая.

Символьная заключается в употреблении ключевой буквы u, g, o и знака (+ добавить, - удалить, = установить право доступа).

Цифровая использует 8-ную форму представления прав (read=4, write=2, execute=1). Для отмены прав доступа выполняется команда – chmod 000 имя файла

В системе UNIX существует возможность маскировать права доступа. Для этого используется команда:

umask [режим доступа]

Эта команда обычно применяется для защиты файлов, созданных пользователем в течении одного сеанса работы с системой. Она позволяет изменить назначаемые по умолчанию права доступа для вновь создаваемого файла. Установленная маска действует до выхода пользователя из системы. Обычно по умолчанию новый файл создается с правами доступа rwrw- rw-, а каталог rwx rwx rwx.

Для смены владельца используется команда: chown [владелец] имя файла

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

Для смены пользователя служит команда: su [имя пользователя]

Использование данной команды дает возможность пользователю начать сеанс работы с системой в качестве нового пользователя и гарантирует доступ ко всем файлам, владельцем которых является новый пользователь. В целях безопасности при выполнении команды su требуется ввод пароля. Без аргументов su переводит данного пользователя в режим суперпользователя при указании соответствующего пароля. Суперпользователь имеет имя root. Для того, чтобы вернуться к прежней идентификации пользователя нельзя использовать команду su. Для этого необходимо ввести командуexit. Команда newgrp позволяет изменить идентификатор группы для пользователя. То, на какие группы можно менять идентификатор группы, определяет администратор системы. Чтобы узнать, на какие группы разрешено менять идентификатор группы данного пользователя, необходимо прочитать файл /etc/group.

Соседние файлы в папке docs