Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Chast5.doc
Скачиваний:
9
Добавлен:
06.11.2018
Размер:
832 Кб
Скачать

Каталоги

Структура каталога файловой системы FFS была изменена для поддержки длинных имен файлов (до 255 символов). Вместо записей фиксированной длины запись каталога FFS представлена структурой, имеющей следующие поля:

d_ino

Номер inode (номер в массиве ilist)

d_reclen

Длина записи

d_namelen

Длина имени файла

d_name[]

Имя файла

И мя файла имеет переменную длину, дополненную нулями до 4-байтной границы. При удалении имени файла принадлежавшая ему запись присоединяется к предыдущей, и значение поля d_reclen увеличивается на соответствующую величину. Удаление первой записи выражается в присвоении нулевого значения полю d_ino.

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

Как было показано, различные типы файловых систем существенно отличаются по внутренней архитектуре. В то же время современные версии UNIX обеспечивают одновременную работу с несколькими типами файловых систем. Среди них можно выделить локальные файловые системы различной архитектуры, удаленные и даже отличные от файловой системы UNIX, например, FAT. Такое сосуществование обеспечивается путем разделения каждой системы на зависимый и независимый от реализации уровни, последний из которых является общим и представляет для остальных подсистем ядра некоторую абстрактную файловую систему. Независимый уровень также называется виртуальной файловой системой (рис. 15.11). При этом дополнительные файловые системы различных типов могут быть встроены в ядро UNIX подобно тому, как это происходит с драйверами устройств.

Использование нескольких файловых систем

Хотя все файлы в системе UNIX логически соединены в одно общее дерево, сами файлы размещаются на различных запоминающих устройствах, например на жестких дисках и СD-RОМ. Файлы, записанные на запоминающих устройствах, организованы в отдельные файловые системы. Дерево каталогов UNIX может охватывать несколько файловых систем, каждая из которых располагается на отдельном устройстве. Сами файлы организованы в единое файловое дерево, вершиной которого является корневой каталог. Несмотря на то, что файловая система с корневым каталогом расположена в одном из разделов жесткого диска, всегда существует путь к файлам, расположенным в файловой системе, размещенной на компакт-диске.

Файлы той или иной файловой системы остаются отделенными от дерева каталогов до тех пор, пока вы явно не присоедините их к этому дереву. В каждой файловой системе файлы организованы в отдельное дерево каталогов. Это дерево можно рассматривать как поддерево, которое необходимо присоединить к основному дереву каталогов. Например, на дискете с файлами ОС UNIX – свое дерево каталогов. Это поддерево нужно присоединить к основному дереву, расположенному в разделе жесткого диска. Пока это не сделано, доступа к файлам на дискете у вас не будет.

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

Монтирование устройства осуществляется командой mount.1 Для того, чтобы получить возможность работать с файлами, записанными на CD-ROM, это устройство нужно сначала смонтировать. Операция монтирования предполагает присоединение дерева каталогов, находящегося на устройстве памяти, к указанному пользователем каталогу. Лишь после этого можно перейти в присоединенный каталог и обращаться к его файлам. Монтировать файловые системы может только привилегированный пользователь, root. Эта задача относится к функциям системного администратора, и обычный пользователь ее выполнять не может. Для того чтобы монтировать файловую систему, нужно войти в систему в качестве привилегированного пользователя. В табл. 15.1 перечислены основные опции команды mount.

Команда mount

Таблица 15.1

Опции

Назначение

-w

Монтирует файловую систему с правом на чтение и запись

-r

Монтирует файловую систему с правом только на чтение

-t тип

Задает тип монтируемой файловой системы, основные типы файловых систем представлены в таблице 15.2

-a

Монтирует все файловые системы, перечисленные в файле /etc/fstab

Типы файловых систем, используемые в команде mount

Таблица 15.2

Опции

Файловая система

ext2

Стандартная файловая система Linux

msdos

Файловая система FAT

nfs

Cетевая файловая система, монтируемая из удаленных систем

swap

Раздел подкачки ОС Linux

sysv

Файловая система UNIX System V

iso9660

Файловая система для монтирования CD-ROM

Команда mount принимает два аргумента: имя устройства, через которое Linux получает доступ к файловой системе, и каталог в файловой структуре, к которому присоединяется новая файловая система. Точка моняирования – это каталог, к которому вы хотите присоединить файлы, находящиеся на запоминающем устройстве. Устройство – это специальный файл устройства, с помощью которого система получает доступ к аппаратным устройствам. Команда mount имеет следующий синтаксис:

$ mount устройство точка_монтирования

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