Использование программного RAID-1 (gmirror) в FreeBSD.
Программные реализации RAID, появившиеся в FreeBSD с версии 5.3:
* gstripe(8) обеспечивает чередование или RAID 0
* gmirror(8) обеспечиват зеркалирование/дуплекс или RAID 1
* graid3(8) обеспечивает чередование с контролем четности или RAID 3
Начальная g указывает на то, что эти утилиты пользуются возможностями, которые предоставляет GEOM (модульная дисковая структура).
Конфигурирование зеркалирования/дуплекса:
Для того чтобы сделать RAID1, необходимо иметь два идентичных (одного производителя и емкости) жестких диска.
# sysctl kern.geom.debugflags=16
kern.geom.debugflags: 0 -> 16 (необходимое изменение системы для возможности выполнения следующей команды)
# gmirror label -v -b round-robin gm0 /dev/ad0
Metadata value stored on /dev/ad0 (gmirror label создает зеркало, функция -v включает режим отладки, -b round-robin выбирает алгоритм балансировки (в настоящее время это наиболее быстродействующий алгоритм), gm0 - имя первого зеркала GEOM и /dev/ad0 указывает на диск, содержащий данные для зеркалирования.)
# echo geom_mirror_load="YES" > /boot/loader.conf (автоматическая загрузка модуля geom)
В /etc/fstab изменяем каждый ad на gm и вставляем mirror после /dev. (прим. /dev/ad0s1a редактируем на /dev/mirror/gm0s1a)
# reboot
# gmirror insert gm0 /dev/ad2
GEOM_MIRROR: Device gm0: provider ad2 detected.
GEOM_MIRROR: Device gm0: rebuilding provider ad2. (вставляем второй диск в зеркало).
# gmirror list
# gmirror status
# gstat