In diesem Verfahren wird von folgenden Voraussetzungen ausgegangen:
Das ZFS-Root-Pool kann nicht wiederhergestellt werden.
Die ZFS-Root-Pool-Snapshots wurden auf einem entfernten System gespeichert und über NFS freigegeben.
Alle Schritte werden auf dem lokalen System ausgeführt.
Booten Sie das System über CD/DVD oder das Netzwerk.
SPARC: Wählen Sie eine der folgenden Boot-Methoden:
ok boot net -s ok boot cdrom -s |
Wenn Sie die Option -s nicht verwenden, müssen Sie das Installationsprogramm beenden.
x86: Wählen Sie die Option zum Booten über DVD oder das Netzwerk. Beenden Sie das Installationsprogramm.
Hängen Sie das entfernte Snapshot-Dataset ein.
Beispiel:
# mount -F nfs remote-system:/rpool/snaps /mnt |
Wenn Ihre Netzwerkservices nicht konfiguriert sind, müssen Sie eventuell die IP-Adresse des remote-system angeben.
Wenn die Root-Pool-Festplatte ersetzt wird und keine Festplattenbezeichnung enthält, die von ZFS verwendet werden kann, müssen Sie die Festplatte umbenennen.
Weitere Informationen zum Umbenennen der Festplatte finden Sie auf der folgenden Site:
http://www.solarisinternals.com/wiki/index.php/ZFS_Troubleshooting_Guide
Erstellen Sie den Root-Pool neu.
Beispiel:
# zpool create -f -o failmode=continue -R /a -m legacy -o cachefile= /etc/zfs/zpool.cache rpool c1t1d0s0 |
Stellen Sie die Root-Pool-Snapshots wieder her.
Dieser Schritt kann etwas Zeit beanspruchen. Beispiel:
# cat /mnt/rpool.0804 | zfs receive -Fdu rpool |
Durch Verwenden der Option -u wird das wiederhergestellte Archiv nach dem zfs receive-Vorgang nicht eingehängt.
Überprüfen Sie, ob die Root-Pool-Datasets wiederhergestellt wurden.
Beispiel:
# zfs list NAME USED AVAIL REFER MOUNTPOINT rpool 6.17G 60.8G 98K /a/rpool rpool@0804 0 - 98K - rpool/ROOT 4.67G 60.8G 21K /legacy rpool/ROOT@0804 0 - 21K - rpool/ROOT/zfsBE 4.67G 60.8G 4.67G /a rpool/ROOT/zfsBE@0804 398K - 4.67G - rpool/dump 1.00G 60.8G 1.00G - rpool/dump@0804 0 - 1.00G - rpool/swap 517M 61.3G 16K - rpool/swap@0804 0 - 16K - |
Legen Sie die Eigenschaft bootfs in der Root-Pool-BU fest.
Beispiel:
# zpool set bootfs=rpool/ROOT/zfsBE rpool |
Installieren Sie auf der neuen Festplatte die Boot-Blöcke.
SPARC:
# installboot -F zfs /usr/platform/`uname -i`/lib/fs/zfs/bootblk /dev/rdsk/c1t1d0s0 |
x86:
# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c1t1d0s0 |
Starten Sie das System neu.
# init 6 |