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

3.7.4. Специальные разряды nls-l

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

В документации команды Is приведены детали. Пример

-rwsr-sr-t 1 root root 2345 Jun 12 14:02 sample

показывает, что символ s используется в тех же местах, где может быть символ х для поль- I зователя и группы. Символ s показывает, что произошла замена символа х на символы s, I для обозначения установленных разрядов set-user and set-group-ID. Символ t свидетельст- I вует об установленном оазояде stickv bit.

3.8. Итоги для команды is

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

Каталоги и файлы

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

Пользователи и группы

Каждому, кто использует систему, присваивается имя пользователя и числовое значение идентификатора пользователя. Пользовательские имена используются людьми для вхож­дения в систему и установления связей с другими людьми. Система использует значения UID для идентификации собственника файла. Люди принадлежат различным группам. Каждая группа имеет имя и числовой идентификатор группы.

Атрибуты файла

Каждый файл имеет набор свойств. Программа может получить список свойств файла с помощью системного вызова stat.

Собственник файла

У каждого файла есть собственник. UID собственника в Unix записывается в качестве | свойства файла. Файл принадлежит группе. GID группы в Unix записывается в качестве

свойства файла.

Права доступа

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

3.9. Установка и модификация свойств файла

Команда Is -1 отображает несколько свойств файла. Как можно устанавливать эти свойст-

Ка? Можно ли изменять их значения? Если да, то как это делать? Если нет, то почему? Про­зрим установленные значения свойств в выводе в длинном формате:

-rw-r--r-- 1 bruce users 3045 Feb 15 03:51 Is2.c

Рассмотрим слева направо каждый из атрибутов

3.9.1. Тип файла

Файл имеет тип. Могут быть обычные файлы, каталоги, файлы устройств, сокеты, симво­лические ссылки и именованные программные каналы.

Установка типа файла. Тип файла устанавливается при создании файла. Например, с помощью системного вызова creat создается обычный файл. Для создания каталогов, файлов устройств и других типов файлов используются другие системные вызовы.

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