ccdconfig - утилита конфигурирования для драйвера конкатенированных ("склееных") дисков
ccdconfig [-cv] ccd коэффициент_чередования [флаги ] устройство [файл ...] ccdconfig -C [-v] [-f файл ] ccdconfig -u [-v] ccd [файл ...] ccdconfig -U [-v] [-f файл_конфигурации ] ccdconfig -g [ccd [...]]
Утилита ccdconfig используется для динамического конфигурирования и удаления конкатенированных дисковых устройств или устройств ccd . Подробнее о драйвере ccd см. на странице справочного руководства ccd(4) .
Поддерживаются следующие опции:
-c
Конфигурировать устройство ccd . Это - стандартное поведение утилиты ccdconfig .
-C
Конфигурирует все устройства ccd , перечисленные в файле конфигурации ccd .
-f файл_конфигурации
При конфигурировании или удалении всех устройств читать указанный файл_конфигурации вместо стандартного /etc/ccd.conf .
-g
Вывести текущую конфигурацию устройства ccd в формате, подходящем для файла конфигурации ccd . Если аргументы не указаны, выводится информация о каждом сконфигурированном устройстве ccd . В противном случае выводится только конфигурация указанных устройств ccd .
-u
Удалить (деконфигурировать) устройство ccd .
-U
Удалить (деконфигурировать) все устройства ccd , указанные в файле конфигурации ccd .
-v
Выдавать детальную информацию по ходу работы.
Устройство ccd описывается в командной строке и в файле конфигурации ccd путем задания имени устройства ccd, коэффициента чередования (interleave factor), флагов конфигурации ccd и списка из одного или нескольких устройств. Флаги можно задавать как десятичное число, шестнадцатеричное число, список строк через запятую или как слово "none ". Поддерживаются следующие флаги:
CCDF_UNIFORM 0x02 Использовать равномерное чередование
CCDF_MIRROR 0x04 Поддерживать зеркалирование
Формат файла конфигурации соответствует порядку аргументов в командной строке. Учтите, что и в команжной строке, и в файле конфигурации аргумент флаги является необязательным.
#
# /etc/ccd.conf
# Файл конфигурации для конкатенированных дисковых устройств
#
# ccd коэффициент_чередования флаги составляющие устройства
ccd0 16 none /dev/da2e /dev/da3e
Составляющие устройства должны указывать на разделы типа FS_BSDFFS (или, как показывает disklabel(8) , "4.2BSD ").
Ниже представлено несколько примеров использования утилиты ccdconfig . Аргументы, передаваемые команде ccdconfig , в точности совпадают с теми, колторые можно указывать в файле конфигурации /etc/ccd.conf . Первая команда создает четырехдисковый набор полос из четырех разделов scsi-диска. Полоса занимает 64 сектора (как задает коэффициент чередования). Вторая команда - пример сложного сочетания зеркалирования и разбиения на полосы. Она создает двухдисковый набор полос из устройств da2e и da3e , который зеркалируется двухдисковым набором полос на устройствах da4e и da5e . Последний пример создает простое зеркало. Устройство /dev/da2e зеркалируется с устройством /dev/da4e и получает имя ccd0 .
# ccdconfig ccd0 64 none /dev/da2e /dev/da3e /dev/da4e /dev/da5e
# ccdconfig ccd0 128 CCDF_MIRROR /dev/da2e /dev/da3e /dev/da4e /dev/da5e
# ccdconfig ccd0 128 CCDF_MIRROR /dev/da2e /dev/da4e
При создании нового ccd -диска обычно перед дальнейшей работой его необходимо разметить с помощью disklabel(8) . После создания исходной метки ее можно будет редактировать, добавляя дополнительные разделы. Сама метка занимает первые 16 секторов ccd -диска. Если на диске будут создаваться новые файловые системы с помощью утилиты newfs , об этом можно не беспокоиться, поскольку утилита newfs пропустит область метки. Однако, если предполагается использовать команду dd(1) для копирования с или на раздел ccd , имеет смысл создать раздел, не перекрывающийся с областью метки диска. Например, если имеется ccd -диск размером 10000 секторов, можно создать раздел 'd ' со смещением 16 и размером 9984.
# disklabel ccd0 > /tmp/disklabel.ccd0
# disklabel -Rr ccd0 /tmp/disklabel.ccd0
# disklabel -e ccd0
Разметка ccd -диска с помощью disklabel обычно выполняется один раз. В отличие от других устройств, ccd в настоящее время требует указания при разметке раздела 'c '. Если вы перегрузите машину и переконфигурируете ccd -диск, созданная на нем ранее метка диска отсанется и переинициализировать ее не придется. Помните, что изменение любых параметров ccd (коэффициента чередования, флагов или списка устройств, составляющих ccd-диск) обычно приводит к уничтожению всех ранее записанных на ccd-диске данных. Если это произошло, обычно имеет смысл переинициализировать метку перед (вос)созданием ccd -диска.
Ошибка на ccd -диске обычно невосстановима, если только не используется зеркалирование. Но зеркалирование имеет свои недостатки: при этом предполагается, что обе копии данных в любом секторе идентичны. Так и будет, пока не произойдет ошибка записи или вы не замените любую составляющую зеркальной пары. Это - реализация зеркалирования для бедных. Оно работает достаточно хорошо для того, чтобы при возникновении ошибок диска можно было скопировать ccd -диск, заменить сбойное оборудование и затем пересоздать ccd -диск. Если нужно что-то большее, имеет смысл задуматься об использовании внешних аппаратных RAID-массивов с интерфейсом SCSI, RAID-контроллеров типа контроллера dpt(4) или программных реализаций RAID-систем вроде vinum(8) .
/etc/ccd.conf
стандартный файл конфигурации устройств ccd
dd(1) , ccd(4) , dpt(4) , disklabel(8) , rc(8) , vinum(8)
Исходная метка диска, возвращаемая ccd(4) содержит всего 3 раздела. Необходимо увеличить количество разделов до 8 с помощью команды "disklabel -e ", чтобы привести метку к типичному для BSD виду.
Утилита ccdconfig впервые появилась в NetBSD 1.0A.
FreeBSD 4.9, 17 июля 1995 года
Copyleft (no c) - Fuck copyright! 2003 В. Кравчук , OpenXS Initiative , перевод на русский язык