Монтирование файловых систем
Точкой монтирования обязательно должен быть каталог. При монтировании файловой системы его содержимое добавляется к существующему дереву каталогов в виде дополнительной ветви, «растущей» из точки монтирования. Это несколько напоминает «мичуринскую прививку».
Если в исходной файловой системе из точки монтирования выходили другие подкаталоги и файлы, то после монтирования они станут невидимы - их «закроют» ветви примонтированной файловой системы. Старые данные не уничтожаются - они вновь станут видимы после размонтирования. Поэтому точка монтирования должна представлять собой пустой каталог.
Монтирование - это привилегированная операция, разрешаемая только суперпользователю. Монтирование файловых систем на этапе загрузки производится с помощью небольшого текстового файла /etc/fstab. Файл /etc/fstab, coдержимое которого приведено в листинге 20, представляет собой таблицу из шести столбцов.
dev/hdal |
/ |
ext2 |
defaults |
1 |
1 |
|
dev/hda2 |
/mnt/ntfs5 |
ntfs |
defaults |
0 |
0 |
|
dev/hda3 |
/mnt/fat32 |
vfat |
defaults |
0 |
0 |
|
dev/hda4 |
swap |
swap |
defaults |
0 |
0 |
devpts |
/dev/prs |
devpts |
gid=5, mode=620 |
0 |
0 |
/proc |
/proc |
proc |
defaults |
0 |
0 |
|
/dev/fdO |
/mnt/floppy |
msdos |
defaults, |
users, noauto |
0 |
0 |
/dev/hdc |
/mtt/cdrom |
iso9660 |
ro, user, i |
noauto |
0 |
0 |
Листинг 20. Содержимое файла/etc/fstab
-
В первом столбце указывается дисковое (блочное) устройство, точнее логический раздел диска, на котором содержится файловая система, подлежащая монтированию. Типовые названия этих устройств перечислялись в параграфе 4.1. Исключением являются два псевдоустройства: файловая система /proc, рассмотренная в параграфе 2.5, и псевдотерминал devpts.
-
Второй столбец таблицы указывает точку (каталог) монтирования. Каталог к моменту монтирования уже должен существовать. Имена точкам монтирования даются таким образом, чтобы они ассоциировались с конкретными устройствами (например, /mnt/floppy или /mnt/cdrom). Это в какой-то степени заменяет пользователю привычное обращение к логическим дискам.
-
Третий столбец указывает на тип файловой системы. Система Linux позволяет работать с многими файловыми системами, в том числе msdos, vfat (FAT-32), ntfs, ufs, iso9660, proc и т.д. Следует обратить внимание на то, что файл подкачки в системах Linux размещается в отдельном логическом разделе жесткого магнитного диска.
-
В четвертом столбце таблицы указываются параметры монтирования. Эти параметры в таблице fstab и в командной строке инструкции mount указываются различным способом.
-
го - (read only) - файловая система монтируется «только для чтения» (обычно это указывается для привода чтения оптических компакт-дисков),
-
rw - файловая система монтируется для чтения и записи,
-
async/sync - обмен данными между оперативной памятью и данной файловой системой производится асинхронно/синхронно,
-
ехес/поехес - разрешить или запретить запуск исполняемых файлов, расположенных в данной файловой системе. Таким образом, например, можно запретить запуск потенциально опасных программ с дискеты или оптического диска,
-
suid/nosuid - принимать во внимание или игнорировать дополнительные атрибуты SUID/SGID, позволяющие запуск исполняемых файлов из данной файловой системы с правами владельца файла или его группы,
-
nouser/user(s) - запретить или разрешить пользователям монтировать данную файловую систему. Параметр user указывает, что монтировать файловую систему в данную точку монтирования может любой пользователь. Если требуется указать конкретного пользователя с данными правами, это записывается так: user=ivanov. Отличие параметров user и users заключается в правах на размонтирование устройства. Параметр user означает, что размонтировать устройство может только тот, кто его монтировал, a users дает права на раз-монтирование любому пользователю.
-
defaults - использовать параметры по умолчанию, что заменяет набор параметров rw, suid, dev, exec, auto, nouser, async. Если в четвертом столбце одновременно указаны параметры defaults и user(s), то значения параметров по умолчанию изменяются на noexec, nosuid и nodev.
-
Пятый столбец таблицы может содержать 0 или 1. Единица предписывает производить резервное копирование данной файловой системы, а 0 - не производить.
-
Шестой столбец используется утилитой проверки файловых систем fsck (file system check). Если указан «О», то файловая система не проверяется (штатная утилита fsck может корректно проверить только файловые системы ext2fs, ext2fs), цифры «1» или «2» указывают очередность проверки.
Файловую систему можно смонтировать и «вручную» с помощью команды mount. Это довольно сложная команда с разнообразным синтаксисом. В наиболее простом варианте данная команда выглядит следующим образом:
mount -t type_fs device dir,
например: mount -t msdos /dev//hda5 /mnt/f loppy