Сетевые файловые системы, файловые системы в памяти и с отображением в файл



Кроме дисков, которые вы физически устанавливаете в ваш компьютер; дискеты, компакт-диски, винчестеры и так далее, FreeBSD воспринимает и другие типы дисков - виртуальные диски.

Сюда могут быть отнесены сетевые файловые системы, такие, как Network File System и Coda, а также файловые системы с организацией в памяти и создаваемые в файлах.

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

Замечание: Пользователи FreeBSD 4.X для создания требуемых устройств должны использовать MAKEDEV(8). Во FreeBSD 5.0 и более поздних версиях для создания файлов устройств используется devfs(5), которая выполняет это прозрачно для пользователей.

Файловая система в файле во FreeBSD 4.X

Утилита vnconfig(8) конфигурирует и позволяет использовать дисковые устройства на основе псевдо-устройств vnode. vnode представляет собой файл и отвечает за работу с файлом. Это означает, что vnconfig(8) использует файлы для создания и работы с файловой системой. Одним из возможных способов использования является монтирование образов дискет или образов компакт-дисков, сброшенных в файлы.

Для использования vnconfig(8) в конфигурационном файле ядра вам нужно включить поддержку vn(4):

pseudo-device vn

Чтобы смонтировать имеющийся образ файловой системы:

Пример 17-3. Использование vnconfig для монтирования имеющегося образа файловой системы во FreeBSD 4.X

# vnconfig vn 0diskimage

# mount /dev/vn 0 c /mnt

Для создания нового образа файловой системы с помощью vnconfig(8):

Пример 17-4. Создание нового диска в файле с помощью vnconfig

# dd if=/dev/zero of= newimage bs=1k count= 5 k

5120+0 records in

5120+0 records out

# vnconfig -s labels -c vn 0newimage

# bsdlabel -r -w vn 0 auto

# newfs vn 0 c

Warning: 2048 sector(s) in last cylinder unallocated

/dev/vn0c: 10240 sectors in 3 cylinders of 1 tracks, 4096 sectors

   5.0MB in 1 cyl groups (16 c/g, 32.00MB/g, 1280 i/g)

super-block backups (for fsck -b #) at:

 32

# mount /dev/vn 0 c /mnt

# df /mnt

Filesystem 1K-blocks Used Avail Capacity Mounted on

/dev/vn0c   4927   1 4532 0% /mnt

Файловые системы, отображаемые в файлы

Во FreeBSD 5.X и более поздних для конфигурации и подключения дисков md(4), отображаемых в оперативную память, используется утилита mdconfig(8). Для работы с mdconfig(8) вам нужно подгрузить модуль md(4) или добавить поддержку этих устройств в файл конфигурации ядра:

device md

Утилита mdconfig(8) поддерживает три типа виртуальных дисков, отображаемых в память: диски в памяти, которая выделяется запросами malloc(9) и диски в памяти, использующие в качестве устройств хранения файлы или раздел подкачки. Одним из возможных использований таких дисков является монтирование файлов с образами дискет или CD.

Для монтирования образа существующей файловой системы:

Пример 17-5. Использование mdconfig для монтирования файла с образом существующей файловой системы

# mdconfig -a -t vnode -f diskimage -u 0

# mount /dev/md 0/mnt

Для создания образа новой файловой системы при помощи mdconfig(8):

Пример 17-6. Создание нового диска, отображаемого в файл, при помощи mdconfig

# dd if=/dev/zero of= newimage bs=1k count= 5 k

5120+0 records in

5120+0 records out

# mdconfig -a -t vnode -f newimage -u 0

# bsdlabel -w md 0 auto

# newfs md 0 a

/dev/md0c: 5.0MB (10224 sectors) block size 16384, fragment size 2048

   using 4 cylinder groups of 1.25MB, 80 blks, 192 inodes.

super-block backups (for fsck -b #) at:

 160, 2720, 5280, 7840

# mount /dev/md 0 a /mnt

# df /mnt

Filesystem 1K-blocks Used Avail Capacity Mounted on

/dev/md0a  4710 4 4330 0% /mnt

Если в параметре -u вы не задали номер устройства, то mdconfig(8) для выбора неиспользуемого устройства будет использовать функцию автоматическое выделения в md(4). Имя выделенного устройства будет выдано на стандартное устройство выводы в виде, например, md4. Для получения более полной информации о mdconfig(8), пожалуйста, обратитесь к соответствующей странице справочной системы.

Утилита mdconfig(8) весьма полезна, однако для создания файла с файловой системой требуется произвести много действий. Вместе с FreeBSD 5.0 поставляется утилита под названием mdmfs(8), которая создаёт диск md(4) при помощи mdconfig(8), размещает на нём файловую систему UFS при помощи newfs(8) и монтирует её командой mount(8). Например, если вы хотите создать и смонтировать такой же образ файловой системе, как выше, просто наберите такую команду:


Дата добавления: 2018-10-26; просмотров: 154; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!