Booten ohne VxVM

A. Booten ohne VxVM

  1. Vergewissern Sie sich vor dem Reboot, wo die Original-Kopien von /etc/system und /etc/vfstab vor VxVM liegen (z.B. /etc/system.presf und /etc/vfstab.c#t#d#). Kopieren Sie außerdem sicherheitshalber die VxVM-Versionen beider Dateien (z.B. /etc/system.sf und /etc/vfstab.sf).
  2. Bringen Sie das System in den OpenBoot-Prom:
    # init 0 oder # halt
  3. Booten Sie mit der Datei /etc/system.presf (zur Not /dev/null), d.h. verhindern Sie, daß das vxio-Kernelmodul während der ersten Bootphase auf die /-Partition zugreift:

    ok boot –a
    ...
    etc/system.presf
    ...
  4. Der Remount der /-Partition scheitert wegen der falschen Einträge in /etc/vfstab. Geben Sie das root-Paßwort ein, um eine Shell zu erhalten.
  5. Sollte VxVM noch (begrenzt) lauffähig sein, können Sie die Schritte unter B 2+3 auch hier schon ausführen.
  6. Remounten Sie die /-Partition read-write und restaurieren Sie die Datei /etc/vfstab, die für die aktuelle Boot-Disk zuständig ist (evtl. auch die Datei /etc/system anpassen):
    # mount –o remount,rw /dev/dsk/c#t#d#s# /
    # cp /etc/vfstab /etc/vfstab.sf (wenn noch nicht geschehen)
    # cp /etc/vfstab.c#t#d# /etc/vfstab
  7. Um zahlreiche Fehlermeldungen von VxVM-RC-Skripten zu vermeiden, wenn VxVM defekt ist, ein Flagfile anlegen, das die Ausführung dieser Skripte überspringt:
    # touch /etc/vx/reconfig.d/state.d/install-db
  8. Jetzt den unterbrochenen Bootvorgang fortsetzen:
    # exit (alternativ ^D)

B. Booten wieder über VxVM

  1. 1. Reparieren Sie die Fehler von VxVM. Vergewissern Sie sich, daß die Dateien /etc/system und /etc/vfstab in der VxVM-Version vorliegen und das Flagfile /etc/vx/reconfig.d/state.d/install-db nicht mehr existiert.
  2. Wenn Sie den Schritt A 5 nicht ausgeführt haben, müssen Sie B 2+3 durchführen! Starten Sie für den folgenden Schritt den vxconfigd zumindest in den Boot-Modus, wenn er disabled ist (ansonsten gleich B 3):
    # vxdctl mode
    # vxdctl stop
    # vxconfigd –m boot
  3. Damit VxVM bei einem späteren VxVM-Bootvorgang die Inkonsistenz der Spiegel bemerkt, setzen Sie alle Plexes, deren Subdisks auf der Spiegeldisk liegen, auf OFFLINE:
    # vxprint -g diskgroup –pne 'pl_sd.sd_dmname="mirrordisk"'
    # vxmend –g diskgroup off plex plex ...
  4. Rebooten Sie das System:
    # init 6 oder # reboot
  5. Nach dem Reboot müssen nur noch die Spiegel wieder aktiviert werden. Setzen Sie dazu zunächst die entsprechenden Plexes wieder auf ONLINE:
    # vxmend –g diskgroup on plex plex ...
  6. Diese Plexes sind jetzt im Zustand STALE. Starten Sie [im „Hintergrund“] die Synchronisierung der Spiegel:
    # vxrecover –g diskgroup [-b]
Albrecht Scriba, 2006-05-17