Сетевые файловые системы, файловые системы в памяти и с отображением в файл
Кроме дисков, которые вы физически устанавливаете в ваш компьютер; дискеты, компакт-диски, винчестеры и так далее, 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!