Portál AbcLinuxu, 23. dubna 2024 11:56


Dotaz: Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?

vandrovnik avatar 26.1.2010 19:18 vandrovnik | skóre: 21
Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?
Přečteno: 349×
Odpovědět | Admin

Dobry den, mam server s Centos 5.4, v nem 5 SATA disku. /boot je na /dev/md0, ktera vypada takto:

md0 : active raid1 sdb1[3] sde1[2] sdd1[4] sdc1[1] sda1[0]
      104320 blocks [5/5] [UUUUU]
Vzdy po pridani noveho disku jsem udelal napr. toto:
grub
root (hd4,0)
setup (hd0)
Rikal jsem si, ze pokud napr. disk sda umre, po restartu ho system nenajde, tudiz preznaci vsechny disky, prvni nalezeny zivy disk se tak stane novym sda a z nej system nabehne. Uz dvakrat mi jiny server podle tohoto scenare zafungoval. Nicmene dnes umrel na jinem serveru disk sdb a po restartu k memu prekvapeni server nenabehnul. Poradite, prosim, jak odolnosti proti vypadku disku docilit? Na netu jsem videl i neco na tento zpusob:
grub
root (hd4,0)
setup (hd4)
Ale mam pocit, ze to by fungovat nemelo, protoze kdyz umre sda a restartuju, zadne sde uz nebude a budou jen disky sda-sdd, nebo se pletu?

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

26.1.2010 20:33 True54
Rozbalit Rozbalit vše Re: Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?
Odpovědět | | Sbalit | Link | Blokovat | Admin
V podstatě bychto udělal následovně. Jednoduchý příklad se dvěma disky:

řekněme že mám 2 HDD a /boot mám v RAID 1 na sda1 a sdb1. V tom případě nahraju grub do MBR na sda odkazujici na sda1:
root (hd0,0)
setup (hd0)
A následně nahraju grub do MBR na sdb odkazujici na sdb1:
root (hd1,0)
setup (hd1)
Pokud mám disků v RAID 1 více (třeba 5), provedu totéž na všech. Záznam grubu v MBR totiž nezná žádné sda, sdb, sdc, sdd nebo sde. Ten jen odkazuje na určíté místo na disku. Máte li 5 disků v RAID 1 a /boot připojen na pole sda1,sdb1,sdc1,sdd1,sde1, pak vám sice při výpadku 4 disků sda-sdd zbylý disk sde změní označení na sda (protože už je sám), ale grub na tomto disku o číslování oddílu nic neví a odkazuje z MBR na první partition (pokudjste ho tak nastavil).

Je li tedy /boot na první partition u všech pěti HDD proveďte toto:
root (hd0,0)
setup (hd0)
root (hd1,0)
setup (hd1)
root (hd2,0)
setup (hd2)
root (hd3,0)
setup (hd3)
root (hd4,0)
setup (hd4)
Tím docílíte, že MBR na každém z disků odkazuje na svou vlastní první partition, a proto při výpadku kteréhokoli (maximálně 4), systém vždy nabootuje.

vandrovnik avatar 26.1.2010 23:23 vandrovnik | skóre: 21
Rozbalit Rozbalit vše Re: Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?
Děkuju za odpověď!

Nemám totiž úplně jasno v tom, co setup (hd4) dělá. Zapíše další data, která pak grub potřebuje při bootu, na disk hd4 (=/dev/sde)? A při bootu pak jsou tahle data načtena vždycky z toho samého disku, ze kterého byl načten MBR?

27.1.2010 09:37 True54
Rozbalit Rozbalit vše Re: Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?
příkazem root(hd0,0) sdělujete grubu, kde má hledat bootovací oddíl. Příkazem setup (hd0) pak sdělujete to, kam má grub nahrát úvodní sekvenci - stage1.

Boot pomocí grubu se skládá se sekvence stage1 -> stage 1,5 -> stage2. (jsou možné různé variace, ale to pro vysvětlení není podstatné). Při startu počítače BIOS koukne do MBR a spustí kód stage1, který je v něm uložen. Kód stage1 obsahuje vlastně jen odkaz na stage 1.5, nebo rovnou na stage2. A stage2 je již v /boot partition.

Jakým způsobem jsou tyto odkazy přesně provedeny nevím. Ale evidentně jsou nezávislé na značení sda sdb sdc..... Celý vtip je v tom, nakonfigurovat grub tak, aby stage1 v MBR každého disku odkazovala vždy na stage2 v /boot toho samého disku. V takovém případě je konfigurace grubu zcela nazávislá na libovolném disku, a s libovolným jediným diskem vždy nabootujete, protože je soběstačný.

PS.: Logicky, pokud byste provedl root (hd0,0), a setup (hd4,0), potřeboval byste ke tartu systému disky sda a sde, protoge stage1 uložená v MBR sda (hd0,0) by odkazovala na stage2 uloženou na sde (hd4,0) a při ztrátě jedno z dvojice sda a sde by bootovací sekvence stage1->stage2 logicky nefungovala. Při RAID1 polích proto vždy odkazujte z každého MBR disku (příkaz setup) na partition na tom samém disku (příkaz root)
27.1.2010 10:21 True54
Rozbalit Rozbalit vše Re: Grub - jak spravne nakonfigurovat, aby byl odolny proti vypadku disku?
Zamotal jsem se. :-) OPRAVA:

Logicky, pokud byste provedl root (hd4,0), a setup (hd0), potřeboval byste ke startu systému disky sda a sde, protoge stage1 uložená v MBR sda (hd0) by odkazovala na stage2 uloženou na sde (hd4,0)...

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.