VM : Impossible d’accéder au fichier car il est verrouillé

Si vous avez ce message d’erreur « Impossible d’accéder au fichier filename> car il est verrouillé » ou « Unable to access file since it is locked » vous ne pouvez plus effectuer aucune action sur votre VM comme la démarrer, ou l’arrêter etc..

Les causes peuvent être multiple, problème lors de la perte d’un ESXi, problème stockage etc…

Pour résoudre cet erreur, un peu de troubleshoot s’impose.

Tout d’abord il faut trouver par quel hôte la VM est verrouillée. Pour cela connectez vous sur un ESXi, et taper la commande suivante :

find -name « NOMDEVOTREVM »

find

Ensuite placez vous dans le chemin renvoyé par la commande (Cela correspond au chemin d’accès à votre VM).

cdvm

Il faut ensuite lister les fichiers présent dans le répertoire de votre VM. Ce qui nous intéressent ceux sont les fichiers de log vmware.log

Pour rechercher le dernier ESXi sur lequel la VM s’éxécute, taper la commande suivante :

cat vmware.log | grep « nomdelesx ».

Si vous avez la même norme de nommage pour vos ESX (Exemple vsphere01,vsphere02,etc) taper la commande suivante :

cat vmware.log | grep vsphere

vmwarelog

Le résultat de la commande sera sous la forme suivante :

hostname = NOMDELESX

hostnamevsphere

Vous connaitrez donc le nom de l’ESX sur lequel la VM s’exécute.

Connectez vous en ssh sur l’ESXI puis taper la commande suivante :

vim-cmd vmsvc/getallvms | grep « VOTREVM »

getallvms

Récupérer ensuite l’ID de votre VM, ici 230.

Taper ensuite la commande suivante pour récupérer l’état de votre VM

vim-cmd vmsvc/power.getstate 230

getstateDans mon cas, la VM apparait « powered on » alors que dans le vCenter elle est considérée comme « powered off ».

Taper donc la commande suivante pour éteindre votre VM.

vim-cmd vmsvc/power.off 230

5

Supprimer si besoin votre VM de l’inventaire et ajouté la à nouveau en naviguant dans votre datastore.

addinventory

 

Et voila vous pouvez démarrer votre VM.

Laisser un commentaire