Linux - страница 33
Поэтому большинство операционных систем (не только UNIX) в явной или неявной форме используют первый вариант взаимодействия с файловой системой. Для этого в Linux используются операция «монтирования» и обратная ей «демонтирования» файловой системы. Подробную информацию см. в гл. 5.
Поскольку в операционной системе Linux используется единое связанное дерево каталогов, то, в отличие от DOS/Windows, не существует такого понятия файловой системы, как диск. Все дисковые устройства (файловые системы) интегрируются в дереве каталогов в так называемые точки монтирования, в качестве которых выступают обычные каталоги. Причем, если до монтирования в этом каталоге содержались какие-то файлы, то они становятся недоступны до тех пор, пока вы не смонтируете эту файловую систему. Для операции монтирования/демонтирования используются две команды mount и umount.
Команда mount принимает несколько параметров, из которых обязательными являются всего два. Первый их них – файл устройства, соответствующий диску или разделу, на котором расположена файловая система, или его псевдоним (к примеру – CD-ROM, floppy). Вторым параметром является имя каталога, к которому будет монтироваться система. Например, mount /dev/hda1 /mnt.
Помимо обязательных параметров можно задавать тип монтируемой файловой системы (при отсутствии этого параметра команда пытается самостоятельно определить ее тип), режим доступа, используемую в именах файлов кодировку и некоторые другие параметры.
Существует специальный файл /etc/fstab, содержащий список файловых систем и их параметры монтирования. Этот файл используется ядром операционной системы при ее старте. Ядро пытается смонтировать файловые системы, описанные в этом файле, с соответствующими параметрами монтирования.
После того как отпала необходимость в использовании файловой системы, ее можно демонтировать. Чаще всего это необходимо при работе с дискетами или дисками CD-ROM (один диск необходимо заменить на другой). Для демонтирования используется команда umount. В качестве параметра указывается файл устройства или точка монтирования. Например, umount /dev/hda1 или umount /mnt/floppy.
По окончании работы со сменным носителем информации его обязательно необходимо отмонтировать. Поскольку ядро Linux осуществляет «отложенную» запись на диск, то к тому моменту, когда вы извлечете из дисковода дискету без отмонтирования, информация еще может быть не записана на диск из системного буфера.
Для выполнения операций монтирования и демонтирования требуется наличие прав доступа root. Но при работе на своем персональном компьютере это усложняет процедуру. Есть несколько вариантов решения такой проблемы:
• в KDE или GNOME обычному пользователю можно монтировать CD-ROM и дисковод;
• осуществить временный вход в систему пользователем root, монтировать/демонтировать диск и немедленно выйти;
• применить программу sudo, позволяющую пользователям, для которых это разрешено, использовать команду mount;
• применить пакет mtools, используемый для работы с файловой системой MS-DOS;
• поместить список файлов устройств, используемых при работе с гибкими дисками, и доступных узлов монтирования вместе с нужными опциями (разрешением монтирования пользователем) в файл /etc/fstab.
Поддержка работоспособности файловых систем
Даже самая надежная файловая система не обладает стопроцентной надежностью. Рано или поздно целостность файловой системы нарушается. Это может произойти от некорректного завершения работы системы (нажата кнопка Reset, перебои в электропитании) или повреждения носителя информации. Для проверки и восстановления целостности файловой системы используется команда fsck. Она при загрузке системы запускается автоматически, поэтому возможные неполадки будут обнаружены (и может быть исправлены) перед использованием файловой системы.