Empêcher VMware d'effectuer un COMMIT à l'arrêt d'une VM
Rédigé par kriko - - Aucun commentaireC'est le piège : quand une VM a été passée en mode REDO à chaud (par la commande vmkfstools addredo), le commit est implicite lors de l'arrêt de la VM ! Ceci peut être très génant si l'on ne veut justement pas conserver les modifications apportées à la VM depuis le passage en mode REDO. Deux méthodes permettent d'empêcher le commit tout en arrêtant la VM :
La méthode brutale :
Faire un ps -eafwww | grep "[root@esx29801 root]# ps -eafwww | grep "f098st42.vmx"
UID PID PPID C STIME TTY TIME CMD
root 9885 1 0 Mar 28 ? 00:15:16 /usr/lib/vmware/bin/vmware-vmx ...
root 9886 9885 0 Mar 28 ? 00:00:18 vmware-mks -A 11 -D 13 -S -L ...
root 9893 9885 0 Mar 28 ? 00:00:00 /usr/lib/vmware/bin/vmware-vmx ...
root 9894 9893 0 Mar 28 ? 01:11:39 /usr/lib/vmware/bin/vmware-vmx ...
Il ne reste plus qu'à faire un kill -9 des PIDs, puis de supprimer le fichier .REDO et le tour est joué
Méthode douce :
Faire un REDO de REDO. Autrement dit repasser une commande vmkfstools addredo. Ceci va créer un fichier .REDO.REDO. Ensuite, arrêter normalement la VM. Le .REDO.REDO est commité dans le .REDO et le fichier .vmdk principal n'est pas affecté. La VM étant arrêté, vous pouvez alors supprimer alors le fichier .REDO restant puis la redémarrer.