Anlegen und Booten von einer Emergency-Disk
Im folgenden wird die Diskgroup-Option –g osdg weggelassen.
- Erzeugen Sie einen dritten Spiegel der OS-Disk auf der zukünftigen Emergency-Disk (vxmirror … funktioniert nicht, da es nur nicht-redundante Volumes spiegelt).
# vxdisksetup –i c#t#d# format=sliced
# vxdg adddisk osdg03=c#t#d#
# for Vol in `vxprint -vn`; do
> vxassist mirror $Vol osdg03; done
# vxbootsetup osdg03
- Vergewissern Sie sich vor dem Reboot, daß Sie eine Version der Datei /etc/system ohne VxVM-Einträge auf dem System haben (z.B. /etc/system.preencap).
- Schalten Sie alle Plexes (außer zum Swap-Volume) der Emergency-Disk auf OFFLINE.
# vxmend off \
> `vxprint –pne ´pl_sd.sd_dmname=”osdg03” && assoc!="swapvol"´`
- Bereinigen Sie die Filesysteme der offline gesetzten Plexes über ihren Partitionstreiber:
# fsck –y /dev/rdsk/c#t#d#s#
- Bringen Sie das System in den OpenBoot-Prom:
# init 0 oder # halt
- Booten Sie über die Emergency-Disk mit der Datei /etc/system.preencap (zur Not /dev/null), d.h. verhindern Sie, daß das vxio-Kernelmodul während der ersten Bootphase auf die /-Partition zugreift, und verhindern Sie die Ausführung der RC-Skripte:
ok boot vx-osdg03 –ab
...
etc/system.preencap
...
- Geben Sie im Single-User-Runlevel das root-Paßwort ein, um eine Shell zu erhalten. Laden Sie die korrekte Tastatur-Tabelle:
# loadkeys
- Vertauschen Sie die Plex-Zustände (swapvol muß ausgelassen werden, was aber unproblematisch ist).
# vxconfigd –m boot –x cleartempdir
# for Plex in \
> `vxprint –pne ´pl_sd.sd_dmname!="osdg03" && assoc!="swapvol"´`; do
> vxmend off $Plex; done
# for Plex in \
> `vxprint –pne ´pl_sd.sd_dmname="osdg03" && assoc!="swapvol"´`; do
> vxmend on $Plex; vxmend fix clean $Plex; done
- Rebooten Sie jetzt von der Emergency-Disk.
# reboot vx-osdg03
- Sollen evtl. von den anderen OS-Disks Daten gerettet werden, können die Partitionen temporär zum Kopieren gemounted werden (ggf. zuvor fsck):
# mount /dev/dsk/c#t#d#s# /mnt
Kopieren von Dateien
# umount /mnt
- Die Synchronisierung der anderen Plexes wird folgendermaßen gestartet:
# for Plex in \
> `vxprint –pne ´pl_sd.sd_dmname!="osdg03" && assoc!="swapvol"´`; do
> vxmend on $Plex; done
# vxrecover [-b]
- Schließlich werden die Plexes auf der Emergency-Disk wieder offline gesetzt (s.o. 3) und per fsck bereinigt (s.o. 4).