Монтирование файловой системы

Опубликовано в Технологии > Серверные технологии Продолжение

Действие механизма именования по построению унифицированной иерархии основано на использовании системного вызова mount. Функция mount применяется для указания того, как файловая система одного из дисков должна быть подключена к иерархической системе. Обычно необходимые операции монтирования выполняются автоматически во время начальной загрузки системы. На рис. 24.6 показаны три файловые системы, которые были смонтированы для формирования единой иерархии. После монтирования границы между дисками стираются. Например, файловая система 0 жесткого диска 2 выглядит как каталог /с.

Три фойловые системы, смонтированные для формирования общей единообразной иерархии

Как показано на этом рисунке, файловая система 0 жесткого диска 1 была смонтирована в корне иерархии. Файловая система 1 того же жесткого диска была смонтирована в каталоге /а, а файловая система 0 жесткого диска 2 смонтирована в каталоге /с. Команда mount полностью замещает первоначальный каталог новой файловой системой. Обычно для монтирования создается отдельный пустой каталог. Но если каталог, в котором монтируется файловая система, до выполнения монтирования содержит какие-либо файлы, они будут полностью скрыты (т.е. станут недоступными даже для системного администратора) до тех пор, пока эта файловая система не будет снова размонтирована. турагентство метро курская

За небольшими исключениями, операции монтирования полностью скрыты от пользователей. После получения пользователем листинга содержимого каталога / система сообщит о наличии трех подкаталогов: a, b и с. При формировании листинга каталога /а система сообщит о наличии двух каталогов: g и h. В листинге каталога /с/s будет показан файл и каталог v.

Составные имена не обозначают границы между файловыми системами и пользователи не имеют информации о том, где находятся файлы. Например, к файлу п (находящемуся в файловой системе 1 диска 1) можно обратиться с использованием полного составного имени /a/g/j/n.

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

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

/dev/hdal on /	type ext2 (rw,noquota)
/dev/hdbl on /usr type ext2 (rw,noquota) /dev/hda2 on /usr/src type ext2 (rw,noquota)

В первой строке этого листинга показано, что файловая система hdal (первая файловая система на первом жестком диске IDE) смонтирована в каталоге / и образует корень иерархии. Слова type ext2 указывают, что было выполнено монтирование файловой системы Linux, а параметры в круглых скобках означают, что файловая система была смонтирована для чтения и записи, а дисковые квоты для учетных записей не предусмотрены. Файловая система hdbl (первая файловая система второго жесткого диска) смонтирована в каталоге /usr. Поэтому файлы, доступ к которым может быть получен в каталоге /usr, находятся на другом жестком диске по сравнению с файлами каталога /. И наконец, файловая система hda2 (вторая файловая система первого жесткого диска) смонтирована в каталоге /usr/src. Третья операция монтирования иллюстрирует любопытную особенность системы именования, поскольку она означает, что основная часть файлов каталога /usr находится на втором жестком диске, тогда как файлы поддерева /usr/src находятся на первом жестком диске. Дело в том, что механизм монтирования позволяет объединить несколько файловых систем нескольких жестких дисков в общую единообразную иерархию каталогов; пользователи или прикладные программы обращаются к этой иерархии, не имея информации о том, где фактически находятся файлы.

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