Vous pouvez être amené à remplacer un disque dans le pool root pour les raisons suivantes :
Le pool root est trop petit et vous souhaitez le remplacer par un disque plus grand.
Le disque du pool root est défectueux. Dans un pool non redondant, si le disque est défectueux et empêche l'initialisation du système, vous devez initialiser votre système à partir d'un autre média, par exemple un CD ou le réseau, avant de remplacer le disque du pool root.
Si vous exécutez la commande zpool replace pour remplacer un disque dans un disque de pool root, vous devrez appliquer les blocs d'initialisation manuellement.
Dans une configuration de pool root en miroir, vous pouvez peut-être tenter un remplacement de disque sans avoir à initialiser à partir d'un autre média. Vous pouvez remplacer un disque défaillant en utilisant la commande zpool replace ou, si vous avez un disque supplémentaire, la commande zpool attach. Pour savoir comment connecter un autre disque et déconnecter un disque de pool root, reportez-vous aux étapes ci-dessous.
Sur les systèmes équipés de disques SATA, vous devez déconnecter le disque et en supprimer la configuration avant de tenter d'utiliser la commande zpool replace pour remplacer un disque défectueux. Par exemple :
# zpool offline rpool c1t0d0 # cfgadm -c unconfigure c1::dsk/c1t0d0 <Physically remove failed disk c1t0d0> <Physically insert replacement disk c1t0d0> # cfgadm -c configure c1::dsk/c1t0d0 # zpool online rpool c1t0d0 # zpool replace rpool c1t0d0 # zpool status rpool <Let disk resilver before installing the boot blocks> x86# bootadm install-bootloader
Avec certains composants matériels, il n'est pas nécessaire de connecter le disque, ni de reconfigurer son remplacement après son insertion.
Par exemple :
# zpool attach rpool c2t0d0 c2t1d0 Make sure to wait until resilver is done before rebooting.
Le bon étiquetage et les blocs d'initialisation sont appliqués par défaut.
Par exemple :
# zpool status rpool pool: rpool state: ONLINE scan: resilvered 11.6G in 0h5m with 0 errors on Fri Jul 20 12:06:07 2012 config: NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c2t0d0 ONLINE 0 0 0 c2t1d0 ONLINE 0 0 0 errors: No known data errors
Par exemple :
# zpool detach rpool c2t0d0
Déterminez la taille du pool rpool existant :
# zpool list rpool NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 29.8G 152K 29.7G 0% 1.00x ONLINE -
# zpool set autoexpand=on rpool
Vérifiez la taille du pool rpool étendu :
# zpool list rpool NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT rpool 279G 146K 279G 0% 1.00x ONLINE -
Reconfigurez le BIOS du système.