Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
кп_лекция_11.doc
Скачиваний:
13
Добавлен:
16.05.2015
Размер:
99.84 Кб
Скачать

Типы файлов

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

В ОС Linux можно выделить следующие типы файлов:

* обычные файлы — последовательность байтов (текстовые документы,

исполняемые программы, библиотеки и т.п.); * каталоги — именованные наборы ссылок на другие файлы; * файлы физических устройств, подразделяющихся на:

• файлы блочных устройств, драйверы которых буферизуют ввод-вы­вод с помощью ядра и

• файлы байт-ориентированных, или символьных, устройств, по­зволяющих связанным с ними драйверам выполнять буферизацию собственными средствами; * символические ссылки (syrnlink, symbolic link); * именованные каналы (named pipes); гнезда (sockets).

Обычные файлы и каталоги

Свойства (атрибуты) файлов и каталогов можно вывести на терминал с помощью команды Is с ключом -1:

$ls -I /home/den/README -rwxr-xr-- I den users 0 Feb 14 19:08 /home/den/README

Что это за свойства?

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

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

О следующем свойстве, количестве ссылок на файл, будет сказано в па­раграфе о символических ссылках.

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

Для каталога вывод команды \s выглядит так же, но значение некоторых свойств отличается.

$ls -I -a /home/den

drwx------ 3 den users 4096Feb 14 19:02 . drwxr-xr-x 4 root root 4096Feb 02 11:32 .. [...]

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

Бит чтения в правах доступа означает право просматривать содержание каталога, записи — право создавать и удалять файлы в каталоге, испол­нения — право переходить в этот каталог (делать его своим текущим каталогом).

Файлы физических устройств

Все подключенные к компьютеру устройства понимаются операцион­ной системой как файлы: вывод информации на терминал, печать на принтере, отправка почты — все это, с точки зрения ОС, есть запись в файл. Технически файл устройства — это коммуникационный интерфейс драйвера, ведающего взаимодействием с этим устройством. Большинство таких файлов располагается в каталоге /dev.

Загляните в этот каталог, введя команду Is -1 /dev. Вывод этой команды займет несколько экранов, что создает повод для знакомства с коман­дой-фильтром more, выводящей поступающие к ней на вход данные по одному экрану за раз:

$ Is -I /dev I more

Чтобы увидеть следующий экран, нажмите пробел; чтобы прервать ра­боту команды — Ctrl+С. О символе вертикальной черты, разделяющей команды Is и more, подробнее сказано в п. 3.3.1.

Об именах устройств, соответствующих разделам жесткого диска, сказано в главе 1. В следующей таблице приведена краткая справка по именам

других часто используемых устройств. Символ N означает номер устрой­ства в группе однотипных с ним устройств. Наиболее часто используемые стандартные имена устройств

Таблица 2.2

Файл

Устройство

null

Пустое устройство. Все данные, выводимые в него, просто исчезают. Удобно использовать его для вывода ненужных сообщений

console

Системная консоль, т.е. физически подключенные клавиатура и монитор

ttyN

Пользовательская (виртуальная) консоль. Linux поддерживает до 6 таких консолей, для переключения между которыми служит комбинация клавиш Alt+Fn, где п — число от 1 до 6

pts/N

Виртуальный терминал. Программа графического режима, в окне которой можно работать как в консоли

mouseN

Мышь

audioN

Звуковая карта

ttySN

Последовательный порт. Файл /dev/ttySO соответствует порту СОМ1 в MS-DOS, /dev/ttySI — порту COM2

lpN

Параллельный порт

cuaN

Специальное устройство для работы с модемом

ethN

Сетевая плата

fcIN

Дисковод для гибких дисков. Первому, то есть А:, соответствует /dev/fdO, для В: используется имя /dev/fdl

hdxN

Жесткий диск с интерфейсом IDE, где х — буква, обозначающая номер такого диска (начиная с а), N— номер раздела на диске

sdxN

Жесткий диск с интерфейсом SCSI

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

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