Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторная работа 1 (2014).doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
204.29 Кб
Скачать

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

Сначала несколько концепций, связанных с файловыми системами. Прежде, чем файловая система будет принята вашей системой, она должна быть примонтирована к какому-то каталогу. Например, если у вас файловая система на дискете, то вы должны примонтировать ее в каталог, скажем /mnt, для того, чтобы обеспечить доступ к ее файлам. После монтирования файловой системы все файлы этой системы появляются в этом каталоге (и ниже). После размонтирования файловой системы каталог (в нашем случае /mnt) будет пуст, то же самое справедливо для файловой системы на жестком диске. Причем каталог /mnt будет пуст, если он был пуст до монтирования, иначе наоборот, станут видными файлы каталога /mnt (основной системы), которые становятся "невидимыми", когда к этому каталогу монтируется файловая система). Система автоматически монтирует файловые системы на ваш жесткий диск во время загрузки. Так называемая "корневая файловая система" монтируется к каталогу /. Если у вас отдельные файловые системы, например, для /usr - она монтируется на /usr. Если у вас только корневая файловая система, то все файлы, включая содержимое /usr, существуют в этой файловой системе.

Команда mount используется для монтирования файловой системы.

mount -av

Выполняется из файла /etc/rc (файла системной инициализации во время загрузки). Команда mount -av получает информацию о файловых системах и монтирует в соответствии с файлом /etc/fstab. Пример файла fstab показан ниже.

# device directory type options

/dev/hda2 / ext2 defaults

/dev/hda3 /mnt ext2 defaults

/dev/hda4 none swap sw

/proc /proc proc none

Первое поле - это устройство (имя монтируемого раздела). Например, /dev/hda2 – соответствует второму разделу жесткого диска. Имя файла hda2 расшифровывается следующим образом: hd (hard disk) – означает жесткий диск, a – означает канал IDE, на котором находится ваш диск, 2- означает номер раздела. Второе поле - точка монтирования. Третье поле - тип файловой системы (например, ext2 для системы типа ext2fs или minix для Minix filesystems).

Не все эти типы могут быть доступны на вашей системе; ваше ядро должно иметь соответствующую откомпилированную поддержку.

Последнее поле файла fstab (options) содержит опции монтирования, обычно они устанавливаются в ``defaults''.

Вы можете видеть, что разделы своппинга также включены в /etc/fstab. Они имеют каталог монтирования "tt/none/", и тип "swap". Команда swapon -a выполняемая из /etc/rc используется для обеспечения своппинга на все устройства, перечисленные в /etc/fstab.

Файл fstab содержит одну специальную запись для файловой системы /proc. Файловая система /proc используется для хранения информации о системных процессах, доступной памяти и т.п. Если /proc не примонтирован, такие команды, как ps не будут работать.

Внимание! Команда mount может использоваться только root. Это для обеспечения безопасности системы. Вам не захочется, чтобы монтирование и размонтирование файловых систем зависело от прихоти рядовых пользователей. Есть несколько программных пакетов, которые дают возможность тем самым рядовым пользователям монтировать и размонтировать файловые системы (особенно на дискетах) не затрагивая безопасности системы.

Таким образом, команда mount -av фактически монтирует все файловые системы, кроме корневой файловой системы. Корневая файловая система автоматически монтируется ядром во время загрузки. Вместо использования mount -av вы можете примонтировать файловую систему вручную. Команда

# mount –t ext2 /dev/hda3 /mnt

эквивалентна монтированию файловой системы на /dev/hda3 в примере fstab, рассмотренном ранее. В данном случае команде mount передается три параметра ext2, /dev/hda3 и /usr - которые содержат соответственно тип файловой системы, файл устройства, на котором располагается файловая система и точка монтирования. Как правило, обычно бывает достаточно указать два параметра: файл устройства и точка монтирования.

Обычно пользователю не приходится монтировать и размонтировать файловые системы вручную. Команда mount -av в /etc/rc позаботится о монтировании файловых систем во время загрузки. Файловые системы автоматически размонтируются командами shutdown или halt перед выключением системы.

В файле /etc/mtab хранится информация о том, какие файловые системы сейчас смонтированы и с какими параметрами монтирования это было сделано. Данные о смонтированных файловых системах содержатся также в файле /proc/mounts (и там они точнее, поскольку отображают соответствующую внутреннюю таблицу ядра), но параметров, с которыми эти системы были смонтированы, в нем нет, поскольку они в ядре не хранятся (а те из них, которые интерпретируются программой mount, вообще не доходят до ядра), поэтому /etc/mtab также находит применение.

Как уже было сказано, монтирование файловых систем выполняется командой mount, а их размонтирование - командой unmount (в некоторых системах umount). Исключение составляет корневая файловая система, которая обслуживается отдельно и до всех остальных систем. Действительно, только при ее наличии становятся доступными и сама команда mount, и каталог /dev, где находятся файлы устройств, и подкаталоги для монтирования. Чтобы файловые системы можно было монтировать при запуске ОС и размонтировать при ее остановке, используются два файла, которые традиционно размещаются в подкаталоге /etc: /etc/fstab и /etc/mtab. Файл /etc/fstab содержит список файловых систем, которые могут быть смонтированы. Конечно, необходимые параметры всегда можно указать при вызове команды mount, но гораздо удобнее, когда они извлекаются из файла.

Каждой точке монтирования в нем соответствует одна строка, состоящая из шести полей: название устройства, на котором расположена файловая система, точка монтирования, тип файловой системы, параметры монтирования, "уровень дампа" и порядковый номер файловой системы для программы fsck.

Примеры монтирования и размонтирования:

$ mount /dev/hda2 /home

$ umount /home