Андрей Робачевский - Операционная система UNIX

Тут можно читать онлайн Андрей Робачевский - Операционная система UNIX - бесплатно полную версию книги (целиком) без сокращений. Жанр: comp-osnet, издательство BHV - Санкт-Петербург, год 1997. Здесь Вы можете читать полную версию (весь текст) онлайн без регистрации и SMS на сайте лучшей интернет библиотеки ЛибКинг или прочесть краткое содержание (суть), предисловие и аннотацию. Так же сможете купить и скачать торрент в электронном формате fb2, найти и слушать аудиокнигу на русском языке или узнать сколько частей в серии и всего страниц в публикации. Читателям доступно смотреть обложку, картинки, описание и отзывы (комментарии) о произведении.
  • Название:
    Операционная система UNIX
  • Автор:
  • Жанр:
  • Издательство:
    BHV - Санкт-Петербург
  • Год:
    1997
  • Город:
    Санкт-Петербург
  • ISBN:
    5-7791-0057-8
  • Рейтинг:
    4.63/5. Голосов: 81
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 100
    • 1
    • 2
    • 3
    • 4
    • 5

Андрей Робачевский - Операционная система UNIX краткое содержание

Операционная система UNIX - описание и краткое содержание, автор Андрей Робачевский, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru

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

В книге рассматриваются: архитектура ядра UNIX (подсистемы ввода/вывода, управления памятью и процессами, а также файловая подсистема), программный интерфейс UNIX (системные вызовы и основные библиотечные функции), пользовательская среда (командный интерпретатор shell, основные команды и утилиты) и сетевая поддержка в UNIX (протоколов семейства TCP/IP, архитектура сетевой подсистемы, программные интерфейсы сокетов и TLI).

Для широкого круга пользователей

Операционная система UNIX - читать онлайн бесплатно полную версию (весь текст целиком)

Операционная система UNIX - читать книгу онлайн бесплатно, автор Андрей Робачевский
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Права доступа для каталогов не столь очевидны. Это в первую очередь связано с тем, что система трактует операции чтения и записи для каталогов отлично от остальных файлов. Право чтения каталога позволяет вам получить имена (и только имена) файлов, находящихся в данном каталоге. Чтобы получить дополнительную информацию о файлах каталога (например, подробный листинг команды ls -l ), системе придется "заглянуть" в метаданные файлов, что требует права на выполнения для каталога. Право на выполнения также потребуется для каталога, в который вы захотите перейти (т.е. сделать его текущим) с помощью команды cd(1) . Это же право нужно иметь для доступа ко всем каталогам на пути к указанному. Например, если вы установите право на выполнения для всех пользователей в одном из своих подкаталогов, он все равно останется недоступным, пока ваш домашний каталог не будет иметь такого же права.

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

$ pwd

Где мы находимся?

/home/andrei

$ mkdir darkroom

Создадим каталог

$ ls -l

Получим его атрибуты

...

-rwxr--r-- 2 andy group 65 Dec 22 19:13 darkroom

$ chmod a-r+x darkroom

Превратим его в "темный" каталог

$ ls -l

Получим его атрибуты

...

--wx--x--x 2 andy group 65 Dec 22 19:13 darkroom

$ cp file1 darkroom

Поместим в каталог darkroomнекоторый файл

$ cd darkroom

Перейдем в этот каталог

$ ls -l darkroom

Попытаемся получить листинг каталога

##permission denied

Увы...

$ cat file1

ok

Тем не менее, заранее зная имя файла (file1), можно работать с ним (например, прочитать, если есть соответствующее право доступа)

Особого внимания требует право на запись для каталога. Создание и удаление файлов в каталоге требуют изменения его содержимого, и, следовательно, права на запись в этот каталог. Самое важное, что при этом не учитываются права доступа для самого файла. То есть для того, чтобы удалить некоторый файл из каталога, не обязательно иметь какие-либо права доступа к этому файлу, важно лишь иметь право на запись для каталога, в котором находится этот файл. Имейте в виду, что право на запись в каталог дает большие полномочия, и предоставляйте это право с осторожностью. Правда, существует способ несколько обезопасить себя в случае, когда необходимо предоставить право на запись другим пользователям, — установка флага Sticky bit на каталог. Но об этом мы поговорим чуть позже.

В табл. 1.2 приведены примеры некоторых действий над файлами и минимальные права доступа, необходимые для выполнения этих операций.

Таблица 1.2. Примеры прав доступа

Команда Смысл действия Минимальные права доступа
для обычного файла для каталога, содержащего файл
cd /u/andrei Перейти в каталог /u/andrei - x
ls /u/andrei/*.с Вывести все файлы с суффиксом .c этого каталога - r
ls -s /u/andrei/*.с Вывести дополнительную информацию об этих файлах (размер) - rx
cat report.txt Вывести на экран содержимое файла report.txt r x
cat >> report.txt Добавить данные в файл report.txt w x
runme.sh Выполнить программу runme x x
runme Выполнить скрипт командного интерпретатора runme.sh rx x
rm runme Удалить файл runme в текущем каталоге - xw

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

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

1. Если операция запрашивается суперпользователем, доступ разрешается. Никакие дополнительные проверки не производятся. Это позволяет администратору иметь неограниченный доступ ко всей файловой системе.

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

а) если требуемое право доступа определено (например, при операции чтения файла установлено право на чтение для владельца- пользователя данного файла), доступ разрешается,

б) в противном случае доступ запрещается.

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

а) если требуемое право доступа определено, доступ разрешается,

б) в противном случае доступ запрещается.

4. Если требуемое право доступа для прочих пользователей (other) установлено, доступ разрешается, в противном случае доступ запрещается.

Система проводит проверки в указанной последовательности. Например, если пользователь является владельцем файла, то доступ определяется исключительно из прав владельца-пользователя, права владельца-группы не проверяются, даже если пользователь является членом владельца-группы. Чтобы проиллюстрировать это, рассмотрим следующее:

----rw-r-- 2 andy group 65 Dec 22 19:13 file1

Даже если пользователь andy является членом группы group, он не сможет ни прочитать, ни изменить содержимое файла file1. В то же время все остальные члены этой группы имеют такую возможность. В данном случае, владелец файла обладает наименьшими правами доступа к нему. Разумеется, рассмотренная ситуация носит гипотетический характер, поскольку пользователь andy в любой момент может изменить права доступа к данному файлу как для себя (владельца), так и для группы, и всех остальных пользователей в системе.

Дополнительные атрибуты файла

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

Дополнительные атрибуты также устанавливаются утилитой chmod(1) , но вместо кодов 'r', 'w' или 'x' используются коды из табл. 1.3. Например, для установки атрибута SGID для файла file1 необходимо выполнить команду $ chmod g+s file1.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Андрей Робачевский читать все книги автора по порядку

Андрей Робачевский - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Операционная система UNIX отзывы


Отзывы читателей о книге Операционная система UNIX, автор: Андрей Робачевский. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x