Podle tohoto článku : http://www.texsoft.it/index.php?c=hardware&m=hw.storage.grubraid1&l=it
je nutno nastavit na všech discích v raidu GRUB v případě selhání „primárního“ z nich.
Uvedu příklad z článku
Máme 2 disky. Oba jedou v RAID 1. Při instalaci linuxu se nainstaloval však grub pouze do /dev/hda To znamená, že pokud by tento disk vypadl, server by znovu nenabootoval, protože by neměl disk, na kterém by byl nainstalován grub.
Řešení je následující:
pomocí apt-get install grub nainstalujeme grub.
Pak spustíme grub v terminálu pomocí příkazu grub .
Po napsání: root(hd0,0) nám to vypíše krátké info o tom, s čím jdeme pracovat.
další příkaz je setup(hd0)
Pro druhý disk:
root(hd1,0)
setup(hd1)
Až skončíme, tak napíšeme quit a hotovo.
Pokud by vypadnul disk, není potřeba nijak měnit /boot/grub/grub.conf . Systém bezproblému naběhne.
Lze to otestovat tak, že vypneme server, odpojíme první disk a necháme server naběhnout (nabootovat) jiný disk.
po zadání terminálového příkazu cat /proc/mdstat nám to ukáže [_U] kde _ znamená vypadlý disk a U znamená UP – připojený disk.
Po zadání příkazu:
mdadm –detail /dev/md0
(za md0 si dosaďte identifikátor vašeho diskového pole. Může to být md0 až md255)
vidíme už degraded ve State.
Teoreticky by šlo vypsat pouze
mdadm –detail /dev/md0 | grep degraded
Pokud příkaz nevypíše nic, diskové pole není degradované. Pokud vypíše řádek, kde bude napsáno „degraded“, tak jeden z disků je „vypadený“.
Navrácení disku do pole zpět
píšeme příkazy:
fdisk -l
Tento příkaz nám vypíše seznam všech disků a diskových polí.
Příkaz:
cat /proc/mdstat
Vypíše seznam aktivních připojených disků do raid pole. Pokud odpojený disk byl /dev/sda neměli bychom ho tu vidět a pokud jsme ho připojili znovu stejně tak, jak byl předtím, měl by mít opět stejný název zařízení, tedy /dev/sda. Pokud má 2 oddíly. Tak první z nich je /dev/sda1 a druhý /dev/sda2. Představme si, že máme 2 diskové pole. První je /dev/md0 a druhé je /dev/md1 .Pokud první oddíl patří do prvního diskového pole a druhý oddíl disku patří do druhého diskového oddílu, budeme psát následující příkazy uvedené níže:
Pro přiřazení disku do diskového pole použijeme příkazy:
mdadm –manage /dev/md0 –add /dev/hdc1
a do druhého diskového pole druhý oddíl stejného pevného disku.
mdadm –manage /dev/md1 –add /dev/hdc2
Pro sledování jak daleko doběhla synchronizace disků můžeme zjistit tímto příkazem docela interaktivně:
watch -n1 cat /proc/mdstat
Příkaz watch bude každou vteřinu vykonávat příkaz cat /proc/mdstat, takže v reálném čase můžeme sledovat na terminálu, jak jsme daleko se synchronizací.
Ohledně synchronizace. Tu děláme někdy ve 4 ráno (můžeme to naplánovat pomocí cronu), kdy je minimální provoz.
Ještě ohledně přípravy nového čistého disku pro RAID pole. Raid pole nepřežvýká naprosto čistý disk bez oddílů. Ty musíme vytvořit. Na linuxu existuje spousta utilit, jak toho dosáhnout.
příklad
Pokud máme 2 diskové pole. První diskové pole raid 1 o velikosti 1GB a druhé diskové pole RAID5 o velikosti 200GB, musíme na disku vytvořit 2 oddíly. První 1GB typu RAID (asi s Boot příznakem, pokud je to bootovací první oddíl, že?) a druhý oddíl taky typu RAID bez příznaku bootu (tam budou data a třeba kořenový adresář / ). Takový disk pak stačí vzít a zařadit do diskového pole a už by měl disk být synchronizován a fungovat. POZOR! Při zapojení nového disku je nutné znovu provést postup pro vytvoření GRUBu na novém disku, aby z něj server dokázal nabootovat v případě výpadku jiného disku!
Pokud používáme GRUB2, tak ten už nativne podporu RAIDu umí! viz odkaz.