Как уже было описано, Vinum автоматически именует создаваемые наборы и поддиски, хотя
эти имена и могут быть переопределены. На самом деле, мы не рекомендовали бы
переопределять стандартные имена: опыт с дисковым менеджером VERITAS показал, что
гибкость в именовании объектов не дает ощутимого преимущества, а запутать пользователя
может.
Имена объектов могут состоять из любых непробельных символов. Впрочем, рекомендуем
ограничиться буквами, цифрами и подчеркиваниями. Имена томов, наборов и поддисков могут
быть до 64 символов длиной; максимальная длина имени привода -- 32 символа.
Для объектов Vinum в иерархии /dev/vinum создаются файлы
устройств. Приведенный выше пример конфигурации создаст следующий набор устройств:
-
Управляющие устройства /dev/vinum/control и /dev/vinum/controld, используемые
системной утилитой vinum(8) и
даемоном Vinum соответственно.
-
Блоковые и символьные устройства для каждого из томов. Основные устройства,
используемые Vinum'ом. Блоковые устройства именуются в соответствии с именами
томов; символьные, в соответствии с традицией именования устройств BSD, имеют
префикс r. Таким образом, вышеописанная
конфигурация будет включать блоковые устройства
/dev/vinum/myvol, /dev/vinum/mirror, /dev/vinum/striped, /dev/vinum/raid5
и /dev/vinum/raid10, и символьные устройства /dev/vinum/rmyvol, /dev/vinum/rmirror,
/dev/vinum/rstriped, /dev/vinum/rraid5 и /dev/vinum/rraid10.
-
Каталог /dev/vinum/drive с записями для каждого привода. В
реальности, каждая запись является символьной ссылкой на соответствующий файл дискового
устройства.
-
Каталог /dev/vinum/volume с записями для томов. В нем
содержатся поддиректории для каждого набора, внутри которых, в свою очередь, имеются
поддиректории для каждого из поддисков.
-
Каталоги /dev/vinum/plex, /dev/vinum/sd и /dev/vinum/rsd,
содержащие блочные устройства для наборов, блочные и символьные устройства для каждого из
поддисков.
Например, для конфигурации, описываемой как
drive drive1 device /dev/sd1h
drive drive2 device /dev/sd2h
drive drive3 device /dev/sd3h
drive drive4 device /dev/sd4h
volume s64 setupstate
plex org striped 64k
sd length 100m drive drive1
sd length 100m drive drive2
sd length 100m drive drive3
sd length 100m drive drive4
после обработки vinum(8), созданный
набор устройств в каталоге /dev/vinum будет таким:
brwx------ 1 root wheel 25, 0x40000001 Apr 13 16:46 Control
brwx------ 1 root wheel 25, 0x40000002 Apr 13 16:46 control
brwx------ 1 root wheel 25, 0x40000000 Apr 13 16:46 controld
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 drive
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 plex
crwxr-xr-- 1 root wheel 91, 2 Apr 13 16:46 rs64
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 rsd
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 rvol
brwxr-xr-- 1 root wheel 25, 2 Apr 13 16:46 s64
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 sd
drwxr-xr-x 3 root wheel 512 Apr 13 16:46 vol
/dev/vinum/drive:
total 0
lrwxr-xr-x 1 root wheel 9 Apr 13 16:46 drive1 -> /dev/sd1h
lrwxr-xr-x 1 root wheel 9 Apr 13 16:46 drive2 -> /dev/sd2h
lrwxr-xr-x 1 root wheel 9 Apr 13 16:46 drive3 -> /dev/sd3h
lrwxr-xr-x 1 root wheel 9 Apr 13 16:46 drive4 -> /dev/sd4h
/dev/vinum/plex:
total 0
brwxr-xr-- 1 root wheel 25, 0x10000002 Apr 13 16:46 s64.p0
/dev/vinum/rsd:
total 0
crwxr-xr-- 1 root wheel 91, 0x20000002 Apr 13 16:46 s64.p0.s0
crwxr-xr-- 1 root wheel 91, 0x20100002 Apr 13 16:46 s64.p0.s1
crwxr-xr-- 1 root wheel 91, 0x20200002 Apr 13 16:46 s64.p0.s2
crwxr-xr-- 1 root wheel 91, 0x20300002 Apr 13 16:46 s64.p0.s3
/dev/vinum/rvol:
total 0
crwxr-xr-- 1 root wheel 91, 2 Apr 13 16:46 s64
/dev/vinum/sd:
total 0
brwxr-xr-- 1 root wheel 25, 0x20000002 Apr 13 16:46 s64.p0.s0
brwxr-xr-- 1 root wheel 25, 0x20100002 Apr 13 16:46 s64.p0.s1
brwxr-xr-- 1 root wheel 25, 0x20200002 Apr 13 16:46 s64.p0.s2
brwxr-xr-- 1 root wheel 25, 0x20300002 Apr 13 16:46 s64.p0.s3
/dev/vinum/vol:
total 1
brwxr-xr-- 1 root wheel 25, 2 Apr 13 16:46 s64
drwxr-xr-x 3 root wheel 512 Apr 13 16:46 s64.plex
/dev/vinum/vol/s64.plex:
total 1
brwxr-xr-- 1 root wheel 25, 0x10000002 Apr 13 16:46 s64.p0
drwxr-xr-x 2 root wheel 512 Apr 13 16:46 s64.p0.sd
/dev/vinum/vol/s64.plex/s64.p0.sd:
total 0
brwxr-xr-- 1 root wheel 25, 0x20000002 Apr 13 16:46 s64.p0.s0
brwxr-xr-- 1 root wheel 25, 0x20100002 Apr 13 16:46 s64.p0.s1
brwxr-xr-- 1 root wheel 25, 0x20200002 Apr 13 16:46 s64.p0.s2
brwxr-xr-- 1 root wheel 25, 0x20300002 Apr 13 16:46 s64.p0.s3
Заметим, что, несмотря на то что наборы и поддиски не рекомендуется называть
каким-либо специальным образом, приводы Vinum должны быть поименованы. Именование
позволяет отвязать приводы от физических устройств, и при этом обеспечить их
автоматическое распознавание. Имена приводов могут достигать длины в 32 символа.
Тома с точки зрения системы аналогичны дискам, за одним малым исключением: в отличие
от дисков UNIX®, тома Vinum не содержат таблиц
разделов. В результате потребовалось модифицировать некоторые утилиты работы с дисками, в
первую очередь newfs(8), которая
ранее использовала последний символ имени тома для определения идентификатора раздела.
Например, дисковое устройство может именоваться /dev/ad0a -- первый раздел (a)
первого (0) IDE-диска (ad) -- или /dev/da2h -- восьмой раздел (h)
третьего (2) диска SCSI (da). Том Vinum может называться,
например, /dev/vinum/concat -- как легко видеть, имя тома
никак не связано с именем раздела.
Обычно newfs(8) пытается
интерпретировать имя раздела и сообщает об ошибке при невозможности такой
интерпретации:
# newfs /dev/vinum/concat
newfs: /dev/vinum/concat: can't figure out file system partition
Замечание: Дальнейшее относится к версиям FreeBSD до 5.0:
Для создания файловых систем на томе Vinum следует использовать опцию newfs(8) -v:
# newfs -v /dev/vinum/concat