|
![]() |
||||||||||
|
Aki ZFS-el dolgozik, és van olyan bátor, hogy root filesystem-nek is azt választ, az hamar bele kell hogy fusson a következő problémába. Ugyanis mi van, akkor ha a root zpoolunkat szeretnénk bővíteni. Persze egyszerű, hozzácsapunk egy új disket a poolhoz, és el van intézve a gond. Csak sajnos ez nem olyan egyszerű.
cannot add to 'rpool': root pool can not have multiple vdevs or separate logs Tehát a gond, az, hogy a root zpool nem állhat több disk-ből. Na de most akkor mit lehet tenni? Lehet újrainstallálni, és végigszívni az egészet az elejéről? Nem feltétlenül. Ugyanis egy kis trükk segítségével a zpool replace parancsot használhatjuk, a kivitelezéshez. Ami sajnos elkerülhetetlen, hogy egy új disk-re lesz szükségünk. Méghozzá pontosan akkorára, amekkorának az új root zpoolt szeretnénk hogy legyen. Ezek után pedig át fogunk rá online migrálni mindent. A zpool parancs esetében alapvetően a replace a poolba lévő hibás diskek cseréjére szoktuk használni. Viszont arra is képes, hogy akármilyen pool-t, még a root zpool-t is, egy az egybe átrakja (az alatta lévő disket kicserélje) egy másikra, működés közben! Lássuk, hogyan. FelkészülésVegyül kiindulási alapnak a következő állapotot:
# zpool list ![]() Mint látszik, egy 10GB-os diskből álló rpool nevű zpoolunk van. Ezek után gondoskodjunk a második leendő rendszer lemezről, ami már 20GB nagyságú az én példámban. ![]() Tegyük elérhetővé a Solaris 10 számára is:
# format ![]() Bizonyosodjunk meg róla, hogy a 0-s slice megfelelőképpen elő van készítve az új disken, és meg van label-ezve:
zpool migrálásaEzek után az egész folyamatot egy egyszerű parancs fogja végrehajtani nekünk. Mindenképp használnunk kell a -f (force) kapcsolót, meg kell adnunk a root zpool nevét, és azt, hogy mit mire akarunk cserélni:
# zpool status -v ![]() Amennyiben befejeződött a csere ezt kell látnunk: ![]() Grub és MBR problémákHa ebben az állapotban újraindítjuk a rendszert, akkor a következőt fogjuk tapasztalni: ![]() Sajnos az első disk-ünk tartalmazza a MBR (master boot record)-t, az viszont már nem tagja a root zpoolunknak. Hogy felbootoljuk, a mostmár második disken lévő root zpoolunkat a következőket kell bepötyögni:
> kernel=/boot/multiboot root=(hd1,0,a) Ugye a hd0,0,a jelöli az első disk első slice-át, a hd1,0,a pedig a második disk 0. slice-át. Ha mindkét sort beütöttük, nyomjuk ESC-pet, mire beugrik a grafikus menü már. ![]() Válasszuk ki most a normál bootolást, és láss csodát, feláll a rendszerünk a második (átmigrált) diskről. Ezt viszont most minden reboot esetében meg kell tennünk. Permanens grub frissítés
Most állítsuk le a gépünket, és távolítsuk el a régi, első disk-t a rendszerünkből. Így az eddigi második disk lesz az egyetlen tehát az első. Mivel betöltöttük erre a disk-re is az MBR-t, már lesz szép GRUB menünk, de mivel azt még akkor tettük, amikor az még második disk volt, ezért betöltődni a rendszer nem fog tudni. Ezért a bootnál válasszuk a FAILSAFE módot. Most szépen elindul a recovery mód, aminek fel kell ismernie, hogy van egy zpoolunk, amit mountoltassunk is fel a /a mountpoint alá vele. ![]() Most már nincs más dolgunk, mint az előző MBR frissítő parancsot kiadni:
Befejeztük ezzel a migrációt. Indítsuk újra a gépet, és már automatikusan el kell indulnia rendszerünknek. ![]() A cél ellenőrzéseTermészetesen ne feledkezzünk el az eredeti célról, a megnövelt root zpool tárterületéről. Természetesen ennek már 20GB-nak kell lennie.
# zpool status ![]() |
|||||||||||
| Published by március 9th, 2010 in Informatika, Linux/Unix and SUN. 2 Comments | |||||||||||
![]() |





























MRB (master boot record) ?????
MBR, haver :) tobb helyes is elirod..
Jogos, ez van ha este irsz... Javitottam.