Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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




 

Большим преимуществом операционных систем UNIX/Linux является их способность «прозрачно» для пользователя работать с разнообразными файловыми системами. Эта возможность реализована с помощью многочисленных драйверов, «понимающих» архитектуру известных файловых систем и драйвера виртуальной файловой системы, которая их все объединяет. Перечень файловых систем, с которыми может работать ОС Linux, можно узнать из файла

/usr/src/linux/Documentation/filesystems/00-INDEX.

Монтированием (так дословно переведена на русский язык команда mount) называется операция подключения файловой системы к «дереву каталогов» работающей ОС Linux; в частности, это может быть файловая система внешнего устройства долговременной памяти. При монтировании содержимое файловой системы устройства дисковой памяти добавляется к существующему дереву каталогов в виде дополнительной ветви, «растущей» из точки монтирования. Монтирование – это привилегированная операция, доступная только суперпользователю. Любую известную ОС Linux файловую систему можно смонтировать при помощи утилиты mount. Это довольно сложная команда с большим числом параметров. В стандартном варианте она выглядит следующим образом:

mount -t type -o option <device> <dir>,

где

· type – тип монтируемой системы (ext2, ext3, msdos, vfat, ntfs, iso9660 и т. д.). Тип auto – это предоставление программе mount возможности автоматически определить монтируемую файловую систему

· option – параметры монтирования, например ro – только чтение, rw – чтение и запись, remount,ro – перемонтирование в режиме для чтения, iocharset=koi8-r – указание используемой кодировки для правильного отображения имени файлов и каталогов, если текущей локалью является кодировка KOI8-R. Более подробно параметры монтирования будут перечислены при рассмотрении конфигурационного файла /etc/fstab,

· <device> – имя специального файла устройства, которое идентифицирует диск с монтируемой файловой системой, например /dev/hda2 или /dev/fd0,

· <dir> – имя каталога, к которому будет монтироваться файловая система (например, /mnt/floppy или /mnt/ntfs). Если в исходной файловой системе из точки монтирования выходили другие подкаталоги и файлы, то после монтирования они сделаются невидимыми – их «закроют» ветви примонтированной файловой системы. «Закрытые» файлы не уничтожаются – они вновь станут видимы после размонтирования. По этой причине в качестве точки монтирования рекомендуется использовать пустой каталог. В то же время администратор с помощью камуфляжного монтирования может скрывать от пользователей и потенциальных взломщиков существование отдельных каталогов. Файлы, открытые до такого монтирования, продолжают оставаться доступными открывшим их программам.

Например, команда

mount –t vfat –o iocharset=koi8-r /dev/sda1 /mnt/usb

предназначена для монтирования файловой системы FAT32 на устройстве полупроводниковой памяти USB-Flash к точке монтирования /mnt/usb с использованием кодировки KOI8-R для правильного отображения имен каталогов и файлов, при этом точка монтирования /mnt/usb должна существовать.

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

mount /dev/fd0 /mnt/floppy

При монтировании файловых систем, в которых не предусмотрено прав доступа (например, FAT), утилита mount назначает владельца файловых объектов и права доступа к ним по умолчанию. Владельцем объявляется пользователь, производивший монтирование, а права доступа к файлам и каталогам устанавливаются в 0755.

Монтирование файловых систем пользователями производится на основе разрешений, записанных в текстовом конфигурационном файле утилиты mount /etc/fstab. Содержимое этого файла приведено на рис. 3.2 и представляет собой таблицу из шести столбцов.

 

dev/hda1 /mnt/ntfs ntfs defaults    
dev/hda2 /mnt/fat32 vfat defaults    
dev/hda3 swap swap defaults    
dev/hda4 / ext2 defaults    
devpts /dev/pts devpts gid=5, mode=620    
/proc /proc proc defaults    
/dev/fd0 /mnt/floppy msdos defaults, users, noauto    
/dev/hdc /mtt/cdrom iso9660 ro, user, noauto    

 

Рис. 3.2. Содержимое файла /etc/fstab

 

В первом столбце указывается дисковое (блочное) устройство, точнее раздел диска или диск целиком, на котором содержится файловая система, подлежащая монтированию. Типовые названия блочных устройств были приведены в предыдущем параграфе. Кроме блочных устройств в таблице присутствуют два псевдоустройства: файловая система /proc, рассмотренная в параграфе 2.5, и псевдотерминал devpts [3].

Второй столбец таблицы указывает точку (каталог) монтирования. Каталог к моменту монтирования должен существовать. Имена точкам монтирования обычно даются таким образом, чтобы они ассоциировались с конкретными устройствами (например, /mnt/floppy или /mnt/cdrom).

Третий столбец содержит тип файловой системы. Следует напомнить, что файл подкачки в системах Linux, идентифицируемый в таблице как swap, может размещаться на отдельном логическом разделе жесткого магнитного диска, отдельном диске или в файле; в случае его размещения в файле файловая система с файлом подкачки должна монтироваться до его подключения.

В четвертом столбце таблицы указываются параметры монтирования. Это те параметры, которые указываются после аргумента –о в командной строке утилиты mount:

· ro – (read only) – файловая система монтируется только для чтения (обычно этот параметр указывается для привода чтения оптических дисков, а также для других устройств памяти, монтирование которых не должно сопровождаться записью, например при проведении криминалистических исследований),

· rw – файловая система монтируется для чтения и записи (по умолчанию). При этом не следует забывать, что оптические диски CD-R/DVD-R по определению монтируются в режиме read only,

· exec/noexec – разрешить или запретить запуск исполняемых файлов, расположенных в данной файловой системе. Таким образом, например, можно запретить запуск неизвестных и потенциально опасных программ из подключаемой файловой системы. Запрет noexec эквивалентен снятию права на исполнение для всех обычных файлов и защищает только от случайного запуска исполняемого файла. Стоит скопировать файл программы на другой носитель и установить для него право на исполнение – и программу можно запускать. Этот запрет также не действует на файлы сценариев, которые, как известно, можно запускать посредством указания их имени после имени командного интерпретатора, имея только право на чтение,

· suid/nosuid – принимать во внимание или игнорировать дополнительные атрибуты SUID/SGID, позволяющие запуск исполняемых файлов из примонтированной файловой системы с правами владельца файла или его группы,

· dev/nodev – разрешить или запретить использование на примонтированном разделе файлов специальных устройств,

· nouser/user(s) – запретить или разрешить пользователям монтировать данную файловую систему. Параметр user указывает, что монтировать файловую систему может любой пользователь. Отличие параметров user и users заключается в правах на размонтирование устройства. Параметр user означает, что размонтировать устройство может только тот, кто его монтировал, а users дает права на размонтирование любому пользователю,

· defaults – использовать параметры по умолчанию, что заменяет набор параметров rw, suid, dev, exec, auto, nouser. Если в четвертом столбце одновременно указаны параметры defaults и user(s), то значения параметров по умолчанию изменяются на noexec, nosuid и nodev. Утилита mount обрабатывает параметры слева направо, замещая ранее встреченные значения параметров значениями, указанными далее. Поэтому указание user перед defaults равносильно отмене первого параметра.

Пятый столбец таблицы может содержать 0 или 1. Единица разрешает производить резервное копирование данной файловой системы утилитой dump, а нуль – не разрешает.

Шестой столбец используется утилитой проверки файловых систем fsck (file system check). Если указан «0», то файловая система не проверяется, цифры «1» или «2» указывают очередность проверки.

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

Создание и монтирование файла, содержащего в себе файловую систему (в Linux возможно и такое!) заключается в следующем:

­ с помощью утилиты dd создается файл требуемого объема (например, 10 Мб), состоящий из двоичных нулей:

dd if=/dev/zero of=/tmp/virt_disk1 bs=1M count=10;

­ на виртуальном диске создается файловая система (например, ext2fs):

mke2fs -F /tmp/virt_disk1;

­ создается точка монтирования (можно это сделать в том же каталоге /tmp):

mkdir /tmp/virt_fs;

­ с помощью устройства обратной связи /dev/loop0 монтируется виртуальный диск с созданной файловой системой ext2fs:

mount –t ext2 –o loop=/dev/loop0 /tmp/virt_disk1

/tmp/virt_fs.

Файл-образ диска, полученный путем копирования, монтируется также с указанием параметра –o loop=/dev/loop0.

Прежде чем подключать (монтировать) файловую систему, следует проверить её целостность. Если файловая система не была отключена должным образом, при попытке подключить ее без проверки пользователю будет выдано сообщение о невозможности выполнить подключение и предложено воспользоваться утилитой проверки и восстановления файловой системы fsck (или e2fsck). Это справедливо для файловой системы ext2fs, в случае же наличия на исследуемом разделе файловой системы ext3fs ошибка будет исправлена с помощью журнала.

Порядок запуска утилиты при проверке:

e2fsck -fy /dev/hda7,

где f – принудительное выполнение проверки в случае, если файловая система этого не требует; y – работа без запросов пользователю.

Демонтируются файловые системы с помощью команды umount. Она записывается в двух вариантах:

umount <device>

или umount <dir>

Демонтирование всех файловых систем, перечисленных в файле /etc/fstab, можно произвести с помощью одной команды




Поделиться с друзьями:


Дата добавления: 2015-03-31; Просмотров: 1736; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.