О монтировании файловых систем.
Одно из первых, что удивляет пользователя, перешедшего с WINDOWS к
UNIX-подобным системам, - это необходимость монтировать (присоединять)
дисководы, CD-ROM и файловые системы жесткого диска. А затем для сохранения
целостности данных на носителе необходимо размонтировать устройство. Если
отсоединить устройство без операции размонтирования, то файловая система
будет разрушена. Большинство проблем возникает с дискетами, так как CD-ROM или
оптический диск без размонтирования блокируется и обычным путем не извлекается.
Этим двум операциям соответствуют команды mount и umount.
Монтирование и размонтирование всех файловых систем выполняется этими
командами, кроме корневой файловой системы, которая обслуживается отдельно
от остальных.
Файловые системы можно монтировать вручную, а можно и автоматически при
загрузке операционной системы (ОС) и размонтировать при остановке ОС. В данной
статье будет рассмотрен второй вариант, как наиболее общий. Для
автоматической монтировки используются два файла
/etc/fstab,
/etc/mtab.
Первый файл содержит список файловых систем, который могут быть смонтированы.
Второй же хранит информацию о том, какие файловые системы смонтированы в данный
момент и с какими параметрами было произведено монтирование. Примерный файл
/etc/fstab (в данном случае моей системы) представлен ниже:
/dev/hda5
|
/
|
ext2
|
defaults
|
1
|
1
|
/dev/hda7
|
swap
|
swap
|
defaults
|
0
|
0
|
/dev/fd0
|
/mnt/floppy
|
auto
|
sync, user, noauto, nosuid, nodev, unhide
|
0
|
0
|
/dev/cdrom
|
/mnt/cdrom
|
auto
|
user, noauto, nosuid, exec, nodev, ro
|
0
|
0
|
none
|
/proc
|
proc
|
defaults
|
0
|
0
|
none
|
/dev/pts
|
devpts
|
mode=0622
|
0
|
0
|
Каждой точке монтирования в нем соответствует одна строка, в которой
перечислены шесть параметров монтирования:
- название устройства, на котором расположена файловая система
- точка монтирования
- тип файловой системы
- параметры монтирования
- уровень дампа
- порядковый номер файловой системы для программы fsck
Рассмотрим более подробно каждый из приведенных параметров.
Название устройства
Название устройства чаще всего зависит от конкретной UNIX (LINUX) системы и от
самого устройства. Обычно для IDE-дисков это что-то подобное
/dev/hda1,
/dev/hda2, /dev/hdb1 ; для SCSI
/dev/rz0a, /dev/rz0b; для floppy-дисководов
/dev/fd0, /dev/fd1 и т.д.
Однако, здесь есть особенности. Для файловой системы procfs, дающей
доступ к внутренним структурам ядра, здесь может находиться любой текст, а
для сетевой файловой системы указывается имя сервера и подкаталога на нем.
Точка монтирования
Это название каталога, к которому будет подмонтирована файловая система.
В данном поле нужно обратить внимание на следующее обстоятельство, если у Вас
одна система монтируется, к примеру, в каталог /mnt/disk1, а вторая,
находящаяся на другом носителе, в каталог /mnt/disk1/razdel, то сторка с
описанием /mnt/disk1 должна стоять в файле /etc/fstab до строки с описанием
точки монтирования /mnt/disk1/razdel.
А также следует заметить, что для раздела-подкачки (swap) данное поле не
используется, а его содержимое может быть любым, но обязательно должно
присутствовать, так как этого требует формат файла.
Тип файловой системы
Данное поле описывает какой тип файловой системы будет монтироваться. Для
получения данный о поддерживаемых типах файловых систем лучше обратиться
к команде
man mount.
Можно воспользоваться значением auto, и тогда команда попытается
сама определить тип файловой системы. Однако, это не панацея, т.к. имеются
ряд трудностей, связанных с тем, что перебираются только файловые системы,
которые поддерживаются ядром в данный момент (они перечислены в файле
/proc/filesystems).
Параметры монтирования
Параметры этого поля и их значения представлены в таблице.
async
|
весь ввод-вывод осуществляется ассинхронно
|
atime
|
изменять параметр "время доступа" при обращении к файлам (по
умолчанию)
|
auto
|
система может быть смонтирована при автоматическом монтировании
|
defaults
|
установки по умолчанию rw + suid + dev + exec + auto + nouser
+ async
|
dev
|
система может содержать файлы блочных и символьных устройств
|
exec
|
система может содержать исполняемые файлы
|
loop
|
для размещения можно использовать обычный файл (стандартно файловые
системы размещаются на устройствах, к каковым обычные файлы не
относятся, но если указать параметр loop программа mount находит
свободное loop-устройство, "связывает" с ним с помощью программы
losetup заданный файли передает имя этого устройства системному
вызову mount, именно так монтируются образы CD-ROM)
|
noatime noauto nodev noexec nosuid nouser
|
параметры, противоположные по значению соответствующим параметрам
без "no"
|
remount
|
перемонтировать уже смонтированную систему, например для изменения
параметров первоначального монтирования
|
ro
|
смонтировать файловую систему в режиме "только чтение"
|
rw
|
смонтировать файловую систему для чтения и для записи (по умолчанию)
|
suid
|
разрешить интерпритацию битов SUID и SGID
|
sync
|
весь ввод-вывод осуществляется синхронно
|
user
|
разрешить обычному пользователь (не обладающему правами root)
монтировать и размонтировать данную файловую систему. Этот параметр
влечт за собой noexec, nosuid и nodev, если после него явно не указано
exec, suid или dev.
|
Перечисленные опции интерпритируются командой mount. Некоторые
параметры должны интерпретироваться ядром системы, в данной статье они
не рассматриваются.
"Уровень дампа"
Это поле используется программой dump, для создания резервных копий.
Если файловая система должна участвовать в процессе резервного копирования,
то здесь должно стоять число 1, если нет - 0.
И наконец, пследняя опция ...
Порядковый номер для fsck
Перед автоматическим подмонтированием файвая система проверяется программой
fsck, которая проверяет ее целостность, и, если необходимо, исравляет ошибки.
Это занимает определенное количество времени, иногда очень большое. Чтобы
ускорить этот процесс можно запускать проверку для некоторых устройств
параллельно.
Есть одно условие: паралельно обрабатываемые системы должны находиться
на разных дисках, иначе вмесо ускорения мыполучем замедление работы. Значение
этого поля задает порядок тестирования файловой системы, если задать одинаковые
номера, то системы будут тестироваться параллельно.
Системы для которых установлен параметр 0, не проверяются вообще.
Дополнительные сведения
Если в файле /etc/fstab имеется строка относящаяся к данной файловой
системе. то при вызове для нее команды mount можно опустить
параметры монтирования, название устройства или точку монтирования.
Также, значения этого файла используются в графических оболочках, таких как
KDE и GNOME, в которых файловые системы монтируются щелчком мыши.
Успехов в работе!
Lomash Dmitry
7.12.00