Страница 1 из 1

Помогите добить GMIRROR

Добавлено: 2013-03-07 21:41:43
amd_miek
Есть система

Код: Выделить всё

FreeBSD diablo.miekoff.local 9.1-STABLE FreeBSD 9.1-STABLE #3 r246666: Sat Mar  2 16:14:28 MSK 2013     root@diablo.miekoff.local:/usr/obj/usr/src/sys/DIABLO64  amd64
Был GMIRROR, который был убит.

Модуль есть в ядре, потом соберу ядро без него

Код: Выделить всё

kldstat -vvv | grep mirr
                169 g_mirror

Код: Выделить всё

gmirror status
gmirror list
Ничего не возвращают.

Но при загрузке:

Код: Выделить всё

GEOM: ada2: the primary GPT table is corrupt or invalid.
GEOM: ada2: using the secondary instead -- recovery strongly advised.
GEOM: ada4: the primary GPT table is corrupt or invalid.
GEOM: ada4: using the secondary instead -- recovery strongly advised.
GEOM_MIRROR: Device gm0: provider ada4p1 marked as inactive, skipping.
GEOM_MIRROR: Device gm0: provider gptid/81f334c7-cabf-11e1-87a6-001fc6ad769b marked as inactive, skipping.
Диски уже под ZFS, не понимаю как добить GMIRROR. Устройства gm0 нету.

Код: Выделить всё

geom label list
Geom name: ada0p1
Providers:
1. Name: gpt/bootfs
   Mediasize: 65536 (64k)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 17408
   Mode: r0w0e0
   secoffset: 0
   offset: 0
   seclength: 128
   length: 65536
   index: 0
Consumers:
1. Name: ada0p1
   Mediasize: 65536 (64k)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 17408
   Mode: r0w0e0

Geom name: ada0p1
Providers:
1. Name: gptid/f84e786d-6f2d-11e2-aa89-001fc6ad769b
   Mediasize: 65536 (64k)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 17408
   Mode: r0w0e0
   secoffset: 0
   offset: 0
   seclength: 128
   length: 65536
   index: 0
Consumers:
1. Name: ada0p1
   Mediasize: 65536 (64k)
   Sectorsize: 512
   Stripesize: 0
   Stripeoffset: 17408
   Mode: r0w0e0
GLABEL тоже ничего не видит

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 21:54:35
GhOsT_MZ
А как "выдергивали" диски из зеркала? судя по логу похоже что всего навсего деактивировали. А нужно было gmirror remove, так как он трет все мета-данные с диска или gmirror clear ...

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 21:57:56
amd_miek
Диски в zfs, там уже не может быть метаданных, zfs при инициализации потрет все.

Код: Выделить всё

diablo.miekoff.local#/home/amd_miek/>gmirror dump /dev/ada2
Can't read metadata from /dev/ada2: Invalid argument.
gmirror: Not fully done.
diablo.miekoff.local#/home/amd_miek/>gmirror dump /dev/ada4
Can't read metadata from /dev/ada4: Invalid argument.
gmirror: Not fully done.
GMIRROR вполне я мог разрушать не как надо, потому как нигде толком не написано как разрушатьзеркало. Как создавать 100500 статей.

Для теста я могу погасить систему, выдернуть эти два харда и бутануться, но мне кажется это не особо имеет смысл.

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 22:04:44
GhOsT_MZ
Это да, но здесь кое-что проскакивает (про очистку мета-данных):
http://www.freebsd.org/doc/handbook/geom-mirror.html

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 22:14:55
amd_miek
Так, полбеды полечил.
осталось только это:

Код: Выделить всё

GEOM: ada2: the primary GPT table is corrupt or invalid.
GEOM: ada2: using the secondary instead -- recovery strongly advised.
GEOM: ada4: the primary GPT table is corrupt or invalid.
GEOM: ada4: using the secondary instead -- recovery strongly advised.
Решение первой полбеды - выполнить clear. Только чтобы он прошел пришлось отключить zfs и ребутнуться в single user. Наверно можно было через service zfs stop, но решил уж наверняка, как в интернетах советовали.

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 22:36:39
GhOsT_MZ
Ну а кто мешает gpart recovery?

Код: Выделить всё

recover   Recover a corrupt partition's scheme metadata on the geom geom.
               See the section entitled RECOVERING below for the additional
               information.

               Additional options include:

               -f flags    Additional operational flags.  See the section
                           entitled OPERATIONAL FLAGS below for a discussion
                           about its use.

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 22:38:03
amd_miek
Победил.

По неведомым причинам если загрузиться с отключеным zfs то будут видны все GPT и не очень разделы. Например у меня на одном из дисков gpart нашел ВИНДОВЫЙ раздел!!! который там когда то был. Видимо ZFS хранит свои метаданные гдето не в том же месте что и GPT(очевидно выжила резервная GPT). А поведение объясняется тем, что сначала загружается GEOM, который все видит и наводит шума, а потом ZFS, который представляет уже другой интерфейс к дискам.

Мирно убивается:

Код: Выделить всё

gpart destroy -F /dev/ada
Важное замечание: если остановить zfs в процессе то больше gpart не увидит всей этой неестественной фигни.

Вывод - впредь быть умнее и дочищать все перед использованием ZFS.

PS: recovery был бы не только лишним, но и глупым, так как мог повредить метаданные ZFS. Все на ZFS же, не нужен gpart, gabel и вообще geom.

Re: Помогите добить GMIRROR

Добавлено: 2013-03-07 22:47:45
GhOsT_MZ
Аааа, тогда да, просто я почемуто думал, что там GPT разметка диска, и создан freebsd-zfs раздел (невнимательно читал вывод команд)