Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект 58 страниц 2002.doc
Скачиваний:
91
Добавлен:
15.06.2014
Размер:
4.07 Mб
Скачать

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

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

t – sticky bit;

s – set UID (для владельца);

s – set GID (для группы);

l – блокирование.

Пример: chmod u+s file1

chmod g+s file2

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

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

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

Для того, чтобы разграничить возможности отдельных пользователей при удалении файлов из каталогов можно использовать атрибут “t”. Из каталога, на который установлен этот атрибут, пользователь может удалить только файлы, которыми он владеет или в отношении которых он имеет право доступа на запись, даже при наличии права записи в каталог. Это используется при работе с каталогами временных файлов. Этот каталог открыт на запись для всех пользователей, но в котором нежелательно удаление файлов других пользователей.

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

Устройства

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

- файлы блочных устройств

- файлы символьных устройств

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

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

При выводе каталога при помощи команды ls -l можно определить, какое устройство и какой номер драйвера используется при его работе.

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

Пример: /dev/rdisk/c0t4d0s2

cktldmsn, где

к – контроллер;

l – номер устройства;

m – номер раздела;

n – логический номер устройства;

/dev/rmth (/dev/rmt0) - накопитель на ленте

/dev/cdn (/dev/cd0) - CD-ROM

/dev/console - системная консоль

/dev/mem - физическая оперативная память

/dev/null , /dev/zero - виртуальные устройства, при выводе на которые все данные уничтожаются, а причтении из него возвращается нуль.