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

Материал из Gentoo Linux Wiki

Перейти к: навигация, поиск
Вернуться к разделу Частых Вопросов и Ответов


Пожалуйста приведите эту статью в соответствиe с wiki разметкой, и затем удалите {{Wikify}} из текста статьи


Содержание

[править] Введение

Одно из первых, что удивляет пользователя, перешедшего с WINDOWS к UNIX-подобным системам, - это необходимость монтировать (присоединять) дисководы, CD-ROM и файловые системы жесткого диска. А затем, для сохранения целостности данных на носителе, еще и необходимость размонтировать устройство. Если отсоединить устройство без операции размонтирования, то файловая система будет разрушена. Большинство проблем возникает с дискетами, так как CD-ROM или оптический диск без размонтирования блокируется и обычным путем не извлекается.

[править] Команды и файлы

Этим двум операциям соответствуют команды mount и umount.

Монтирование и размонтирование всех файловых систем выполняется этими командами, кроме корневой файловой системы, которая обслуживается отдельно от остальных.

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

/etc/fstab,

/etc/mtab

Первый файл содержит список файловых систем, которые могут быть смонтированы. Второй же хранит информацию о том, какие файловые системы смонтированы в данный момент и с какими параметрами было произведено монтирование. Примерный файл /etc/fstab (в данном случае, моей системы) представлен ниже: /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/sda, /dev/sdb1, /dev/rz0a, /dev/rz0b; для floppy-дисководов - /dev/fd0, /dev/fd1 и т.д.

Однако, здесь есть особенности. Для файловой системы procfs, дающей доступ к внутренним структурам ядра, здесь может находиться любой текст, а для сетевой файловой системы указывается имя сервера и подкаталога на нем.

[править] Точка монтирования

Это название каталога, к которому будет подмонтирована файловая система. В данном поле нужно обратить внимание на следующее обстоятельство, если у Вас одна система монтируется, к примеру, в каталог /mnt/disk1, а вторая, находящаяся на другом носителе, в каталог /mnt/disk1/partition1, то строка с описанием /mnt/disk1 должна стоять в файле /etc/fstab до строки с описанием точки монтирования /mnt/disk1/partition1.

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

[править] Тип файловой системы

Данное поле описывает какой тип файловой системы будет монтироваться. Для получения данных о поддерживаемых типах файловых систем лучше обратиться к команде

man 8 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 либо отсутствует , не проверяются fsck вообще
  • корневая файловая система, должна иметь в этом поле значение 1 (если не 0)
  • все остальные файловые системы должны иметь это поле равным 2 (если не 0)
  • файловые системы, расположенные на одном носителе будут проверяться последовательно
  • файловые системы, расположенные на разных носителях, будут проверяться параллельно

[править] Дополнительные сведения

Если в файле /etc/fstab имеется строка относящаяся к данной файловой системе. то при вызове для нее команды mount можно опустить параметры монтирования, название устройства или точку монтирования, то есть в нашем случае, команда

mount /mnt/floppy

смонтирует устройство /dev/fd0 в точку /mnt/floppy

Также, значения этого файла используются в графических оболочках, таких как KDE и GNOME, в которых файловые системы монтируются щелчком мыши.

Если нужно отмонтировать например CD-привод, но какой нибудь процесс обращается к нему, то надо отмонтировать с параметром -l umount -l /mnt/cdrom

[править] Оригинал

http://www.linuxrsp.ru/artic/art3.html
Lomash Dmitry
Личные инструменты