Administration Unix Solaris
# vxdisk list
DEVICE TYPE DISK GROUP STATUS
c0t0d0s2 auto:sliced disk1 zonesdg online
c0t1d0s2 auto:sliced disk2 zonesdg online
c0t2d0s2 auto:sliced disk3 zonesdg online
c0t3d0s2 auto:sliced disk4 zonesdg online
c0t4d0s2 auto:sliced disk5 zonesdg online
c0t5d0s2 auto:sliced rootdisk rootdg online
c1t0d0s2 auto:sliced mir1 zonesdg online
c1t1d0s2 auto:sliced mir2 zonesdg online
c1t2d0s2 auto:sliced mir3 zonesdg online
c1t3d0s2 auto:sliced mir4 zonesdg online
c1t4d0s2 auto:sliced mir5 zonesdg online
c1t5d0s2 auto:sliced rootmir rootdg online
c3t0d0s2 auto:sliced rootalt rootdg online
# vxdisk list c0t0d0
...
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-007310[007062]: copy=01 offset=000231 enabled
log priv 007311-008415[001105]: copy=01 offset=000000 enabled
...
# /etc/vx/diag.d/vxprivutil list /dev/rdsk/c0t0d0s3
config priv 000017-000247[000231]: copy=01 offset=000000 enabled
config priv 000249-007310[007062]: copy=01 offset=000231 enabled
log priv 007311-008415[001105]: copy=01 offset=000000 enabled
La structure VxVM est bien présente sur ce disque (config enabled). La sauvegarde est alors possible.
# /etc/vx/diag.d/vxprivutil dumpconfig /dev/rdsk/c0t0d0s3 > /tmp/zonesdg
Si vous prévérerz sauvegarder la config régulièrement ci-joint un petit script à faire exécuter par la cron.
Réinitialisation des disques
On recherche l'ensemble des disques appartenants au diskgroup (attention au éventuelle duplication dans le fichier /tmp/zonesdg pour les volumes et les plexes : si nécessaire les supprimer ou rejouer la sauvegarde de la structure).
# cat /tmp/zonesdg | vxprint -D - -md | /usr/xpg4/bin/grep -e "^dm" -e "last_da_name" > /tmp/disklist
La liste des disques générées correspond dans notre cas à :
dm disk1
last_da_name=c0t0d0s2
dm disk2
last_da_name=c0t1d0s2
dm disk3
last_da_name=c0t2d0s2
dm disk4
last_da_name=c0t3d0s2
dm disk5
last_da_name=c0t4d0s2
dm mir1
last_da_name=c1t0d0s2
dm mir2
last_da_name=c1t1d0s2
dm mir3
last_da_name=c1t2d0s2
dm mir4
last_da_name=c1t3d0s2
dm mir5
last_da_name=c1t4d0s2
Une fois la liste obtenu il faut réinitialiser les disques (attention à la taille de la private). Il est impératif que les disques que l'on initialise soit les mêmes disques physiques (attention au changement de contrôlleurs si reboot).
# ksh
# for disk in $(cat /var/tmp/disks)
do
/etc/vx/bin/vxdisksetup -i $disk
done
Création du diskgroup et ajout des disques au diskgroup
Une fois les disques initialisés il faut recréer le diskgroup et y inclure les disques. Il est impératif que les noms dm correspondent bien au disques physiques.
# vxdg init zonesdg disk1=c0t0d0s2
# vxdg -g zonesdg adddisk disk2=c0t1d0s2
# vxdg -g zonesdg adddisk disk3=c0t2d0s2
...
# vxdg -g zonesdg adddisk mir5=c1t4d0s2
Recopie de la structure VxVM
Si les disques phydiques intégrés au diskgroup sont bon et que les noms dm correspondent bien au bon disque physiques alors la configuration VxVM peut être reclaquée.
# cat /tmp/zonesdg | vxprint -D - -hmvps > /tmp/vxmakefile
# vxmake -g zonesdg -d /tmp/vxmakefile
Activation des volumes
# vxrecover -g zonesdg -s -b
# ksh
# for vol in $(vxprint -q -g zonesdg -v | awk '{print $2}')
do
vxvol -g zonesdg -f start $vol
done
Normalement, il suffit de faire un check (fsck) sur les systèmes de fichiers (pour être sur) puis de les monter.