Кроме дисков, которые вы физически устанавливаете в ваш компьютер; дискеты, компакт-диски, винчестеры и так далее, FreeBSD воспринимает и другие типы дисков - виртуальные диски.
Сюда могут быть отнесены сетевые файловые системы, такие, как Network Filesystem и Coda, а также файловые системы с организацией в памяти, такие, как md и файловые системы, созданные в файле с помощью vnconfig.
vnconfig(8) конфигурирует и позволяет использовать дисковые устройства на основе псевдо-устройств vnode. vnode представляет собой файл и отвечает за работу с файлом. Это означает, что vnconfig(8) использует файлы для создания и работы с файловой системой. Одним из возможных способов использования является монтирование образов дискет или образов компакт-дисков, сброшенных в файлы.
Чтобы смонтировать имеющийся образ файловой системы:
Example 7-1. Использование vnconfig для монтирования имеющегося образа файловой системы
# vnconfig vn0 diskimage # mount /dev/vn0c /mnt
Для создания нового образа файловой системы с помощью vnconfig:
Example 7-2. Создание нового диска в файле с помощью vnconfig
# dd if=/dev/zero of=newimage bs=1k count=5k 5120+0 records in 5120+0 records out # vnconfig -s labels -c vn0 newimage # disklabel -r -w vn0 auto # newfs vn0c Warning: 2048 sector(s) in last cylinder unallocated /dev/rvn0c: 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/vn0c /mnt # df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/vn0c 4927 1 4532 0% /mnt
md это простой и эффективный способ создания файловых систем в оперативной памяти.
Просто возьмите файловую систему, которую вы приготовили при помощи, скажем, vnconfig(8) и:
Example 7-3. Диск md в памяти
# dd if=newimage of=/dev/md0 5120+0 records in 5120+0 records out # mount /dev/md0c /mnt # df /mnt Filesystem 1K-blocks Used Avail Capacity Mounted on /dev/md0c 4927 1 4532 0% /mnt