[FUG-BR] Carregamento do gmirror e gstripe no loader.conf

Marcelo Gondim gondim em bsdinfo.com.br
Quarta Janeiro 29 02:24:14 BRST 2014


Em 28/01/14 21:54, Paulo Henrique escreveu:
>
> Enviado do meu smartphone Sony Xperia™
>
> ---- Marcelo Gondim escreveu ----
>
>> Pessoal,
>>
>> Estou tentando faz um tempo colocar todo o disco inclusive o raiz em
>> gmirror+gstripe(raid10) pra bootar e não consigo. Quando inicia o boot
>> já manda na lata o Not ufs.
>> Creio que o motivo seja porque para carregar o geom é necessário
>> primeiramente carregar o kernel. O zfs funciona porque tem um boot
>> específico para ele.
>> Só vi uma solução: colocar o / fora do raid e colocar o restante /usr,
>> swap, /var e /tmp no raid10. Alguém já conseguiu bootar o sistema com
>> tudo no geom raid?
>>
>> Meu loader.conf:
>>
>> geom_mirror_load="YES"
>> geom_stripe_load="YES"
>> vfs.root.mountfrom="ufs:/dev/stripe/root"
>>
>> []'s
>> Gondim
>>
> Como esta criando raid10?
> Gstripe = gmirror+ gmirror ou
> Gmirror = gstripe + gstripe?
>
Opa Paulo,

Fiz assim aqui na VM que criei:

ada0 - 10Gb
ada1 - 10Gb
ada2 - 10Gb
ada3 - 10Gb

Criei em cada disco as partições:

/
swap
/var
/usr
/tmp

root0,swap0,var0,usr0 e tmp0
root1,swap1,var1,usr1 e tmp1
root2,swap2,var2,usr2 e tmp2
root3,swap3,var3,usr3 e tmp3

Fiz primeiro o gmirror:

gmirror label root0 /dev/gpt/root0 /dev/gpt/root1
gmirror label swap0 /dev/gpt/swap0 /dev/gpt/swap1
gmirror label var0 /dev/gpt/var0 /dev/gpt/var1
gmirror label usr0 /dev/gpt/usr0 /dev/gpt/usr1
gmirror label tmp0 /dev/gpt/tmp0 /dev/gpt/tmp1

gmirror label root1 /dev/gpt/root2 /dev/gpt/root3
gmirror label swap1 /dev/gpt/swap2 /dev/gpt/swap3
gmirror label var1 /dev/gpt/var2 /dev/gpt/var3
gmirror label usr1 /dev/gpt/usr2 /dev/gpt/usr3
gmirror label tmp1 /dev/gpt/tmp2 /dev/gpt/tmp3

Aí depois fiz o gstripe:

gstripe label root /dev/mirror/root0 /dev/mirror/root1
gstripe label swap /dev/mirror/swap0 /dev/mirror/swap1
gstripe label var /dev/mirror/var0 /dev/mirror/var1
gstripe label usr /dev/mirror/usr0 /dev/mirror/usr1
gstripe label tmp /dev/mirror/tmp0 /dev/mirror/tmp1

Pelo que percebi eu não consigo carregar o gstripe e o gmirror antes do 
kernel ser carregado e por isso o /boot não fica visível, dando o tal 
erro: Not ufs
O que funcionou para mim foi tirar o / do gmirror e gstripe, aí nesse 
caso carregou o kernel e o módulo gmirror e gstripe. O restante 
funcionou de boa.

A minha dúvida era se existe alguma maneira de carregar o gmirror e 
gstripe antes de tudo, como o tal initrd do Linux.

[]'s
Gondim


Mais detalhes sobre a lista de discussão freebsd