Veranstaltungen/2009-12-04 ZFS-Workshop/Szenario: gespiegelte Boot-Platten
Ziel der Übung:
shl@sonnenkind:~$ zpool status
pool: rpool
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
rpool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
c8t0d0s0 ONLINE 0 0 0
c8t1d0s0 ONLINE 0 0 0
errors: No known data errors
Ausgangslage:
shl@sonnenkind:~$ zpool status
pool: rpool
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
testpool ONLINE 0 0 0
c8t0d0s0 ONLINE 0 0 0
errors: No known data errors
OpenSolaris legt bei der Installation einen ZPool "rpool" an, diesen jedoch nur auf der ersten Festplatte. Wer sein boot-System redundant haben möchte, muß etwas Hand anlegen.
Wie rmformat bei USB-Disks hilft hier der Befehl format um sich die verfügbaren Festplatten und deren Kennung (z.B. c8t0d1 o.Ä.) anzuzeigen.
shl@sonnenkind:~$ pfexec format
Searching for disks...done
AVAILABLE DISK SELECTIONS:
0. c8t0d0 <default cyl 60798 alt 2 hd 255 sec 63>
/pci@0,0/pci15d9,7980@1f,2/disk@0,0
1. c8t1d0 </default><default cyl 60798 alt 2 hd 255 sec 63>
/pci@0,0/pci15d9,7980@1f,2/disk@1,0
Specify disk (enter its number):
Nun mit pfexec prtvtoc /dev/rdsk/c8t0d0s2 | pfexec fmthard -s - /dev/rdsk/c8t0d1s2 (entsprechend anpassen und vorher nachdenken natürlich) die Partitionstabelle und die meta-Informationen der ersten Festplatte auf die zweite übertragen.
Die Platte attachen wir dann zum vorhandenen rpool:
shl@sonnenkind:~$ pfexec zpool attach rpool c8t0d0s0 c8t0d1s0
Als letzten Schritt noch den Boot-Loader auf die zweite Platte installieren, so daß bei Ausfall der ersten Platte das System noch immer booten kann:
shl@sonnenkind:~$ pfexec installgrub -m /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c8t0d1s0
Je nach Maschine muß dem BIOS noch erklärt werden, daß auch die zweite Festplatte booten kann - ggf. noch mit Anpassung der Boot-Reihenfolge.
Quellen: