Neste procedimento, suponha as condições a seguir:
O conjunto raiz ZFS não pode ser recuperado.
Os instantâneos do conjunto raiz ZFS estão armazenados em um sistema remoto e são compartilhados no NFS.
Todas as etapas são efetuadas no sistema local.
Inicialize a partir de um CD/DVD ou da rede.
SPARC: selecione um dos seguintes métodos de inicialização:
ok boot net -s ok boot cdrom -s |
Se não usar a opção -s, você terá que sair do programa de instalação.
x86: selecione a opção para inicializar a partir do DVD ou da rede. Em seguida, saia do programa de instalação.
Monte o conjunto de dados remoto do instantâneo.
Por exemplo:
# mount -F nfs remote-system:/rpool/snaps /mnt |
Se seus serviços de rede não estão configurados, poderá ser necessário especificar o endereço IP do sistema remoto .
Se o disco do conjunto raiz for substituído e não contiver uma legenda de disco que possa ser utilizada pelo ZFS, será necessário rotular o disco novamente.
Para obter mais informações sobre como rotular um disco novamente, vá ao seguinte site:
http://www.solarisinternals.com/wiki/index.php/ZFS_Troubleshooting_Guide
Recrie o pool raiz.
Por exemplo:
# zpool create -f -o failmode=continue -R /a -m legacy -o cachefile= /etc/zfs/zpool.cache rpool c1t1d0s0 |
Restaure os instantâneos do pool raiz
Esta etapa pode levar algum tempo. Por exemplo:
# cat /mnt/rpool.0804 | zfs receive -Fdu rpool |
O uso da opção -u significa que o arquivo restaurado não é montado quando a operação do zfs receive terminar.
Verifique se os conjuntos de dados do pool raiz foram restaurados.
Por exemplo:
# 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 - |
Defina a propriedade bootfs no BE do pool raiz.
Por exemplo:
# zpool set bootfs=rpool/ROOT/zfsBE rpool |
Instale os blocos de inicialização no novo disco.
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 |
Reinicialize o sistema.
# init 6 |