Знание должно быть доступно!

Путь /ОС/FreeBSD

Привет, k0d'er(ша)!
Ты смотришь на эти холодные железяки в /dev/ada* и чувствуешь, как руки сами тянутся к gmirror и gpart?
Тогда хакерская кузница зовёт!

Цель миссии:

  1. Очистить всё старое железячье колдовство.

  2. Настроить RAID1 — зеркало, чтоб один диск сдох — второй не пикнул.

  3. Подготовить файловую систему и смонтировать для славных битов будущего.

    Внимание, воины битов!

    Ты потрогаешь низкоуровневое железо. Умрёт всё, что там было.
    Проверь, что диски не участвуют в бою (gpart show, zpool status, mount, и прочее колдунство).

Инструменты орка:

camcontrol devlist
gpart show
gmirror
gpart

newfs

Шаг 1. Найти железо

camcontrol devlist

Ищешь свои ada0, ada3, ada4...
Запомни имена. Это наши мечи. Остальное — лишнее.

Шаг 2. Очистить старую магию
#Если есть gmN у тебя

gmirror stop -f gmN 2>/dev/null
#Ты же знаешь что такое N, например: человек из города N
gmirror clear /dev/adaN
gpart destroy -F adaN

Если диски сопротивляются — насильно, с флагом -F. Орк не спрашивает!

Шаг 3. Нанести GPT-руны на диски

gpart create -s GPT adaN

Шаг 4. Заклинание зеркала

gmirror label -v gm0 /dev/ada0 /dev/ada3

Подробно: что делает эта команда

  • gmirror — утилита из geom, которая создаёт зеркалирование дисков (RAID 1).

  • label — создаёт новое зеркало.

  • -v — выводит подробности.

  • gm0 — имя нового зеркала (можно любое, принято gm0, gm1, …).

  • /dev/ada0 /dev/ada3 — два устройства, которые будут зеркалироваться.

После этого появляется новое волшебное устройство:

/dev/mirror/gm0

Шаг 5. Проверка статуса:

gmirror status

Ждём, пока зеркало синхронизируется. Будет писать COMPLETE, когда готово.

Шаг 6. Гравировка разметки на зеркале

gpart create -s GPT mirror/gm0

Шаги крайние: ZFS-пул zdata поверх зеркала

zpool create -f zdata /dev/mirror/gm0

Разбор:

|Параметр|Значение| |---|---| |-f|Форсирует создание пула (стирает всё!)| |zdata|Название пула (можно любое, например photos)| |/dev/mirror/gm0|Устройство — твоя зеркалка через gmirror|

ZFS сам создаст файловую систему

Он автоматически примонтирует её в:

/zdata

Проверь:

zfs list

Кастомизация путей (необязательно)

Хочешь, чтобы ZFS-массив монтировался в другое место, например в /mnt/raidcamp?

zfs set mountpoint=/mnt/raidcamp zdata

Проверь:

zfs list

Автоматическое монтирование при загрузке

ZFS сам всё монтирует при загрузке, если ты не отключал zfs_enable:

Проверь:

sysrc zfs_enable=YES

Если вдруг ZFS не монтируется после ребута:

zfs mount -a

Бонус: снапшоты

Хочешь делать снимки состояния фоток?

zfs snapshot zdata/fotos@snapshot1

И можешь потом восстановить или даже смонтировать в другое место для просмотра старой версии.

Если хочешь автоматические снапшоты, дедупликацию, сжатие, защиту от битой памяти (silent corruption) — всё это у ZFS есть и можно включить по желанию.

Проверять целостность:

zpool scrub zdata

Советы по продолжению:

|Цель|Команда / Фича| |---|---| |Включить сжатие|zfs set compression=lz4 zdata| |Увидеть здоровье пула|zpool status| |Узнать, сколько места|zfs list| |Переименовать пул|zpool export zdata + zpool import zdata2| |Добавить третий диск|можно в ZFS как spare или расширить|

Напоминание

ZFS хранит всё в памяти о своих пулах. Если зеркало внезапно не видно после перезагрузки:

zpool import
zpool import zdata

Сила кода с тобой, воин битов!