Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

Avertissement : Cette note est de nature divertissante. La densité d'informations utiles y est faible. Elle a été rédigée « pour soi ».

Introduction lyrique

La poubelle de fichiers de notre organisation tourne sur une machine virtuelle VMware ESXi 6 sous Windows Server 2016. Et ce n'est pas juste une poubelle. C'est un serveur d'échange de fichiers entre les départements : il y a du travail collaboratif, de la documentation de projet, et des dossiers d'imprimantes réseau. En résumé, c'est toute la vie productive.

Et donc, ce rĂ©ceptacle de toute la vie productive a commencĂ© Ă  se bloquer. En fait, l'invitĂ© pouvait se bloquer silencieusement, sans affecter les autres. Il pouvait geler le serveur hĂŽte tout entier et, par consĂ©quent, toutes les autres machines invitĂ©es. Il pouvait se bloquer lui-mĂȘme et bloquer les services clients de vSphere : c'est-Ă -dire que les processus des autres invitĂ©s Ă©taient vivants, les machines fonctionnaient correctement et rĂ©pondaient, mais la poubelle de fichiers ne fonctionnait pas et le client vSphere ne pouvait pas se connecter Ă  l'hĂŽte. En rĂ©sumĂ©, il Ă©tait impossible d'identifier un systĂšme. Les blocages pouvaient survenir le jour pendant une faible charge. Ils pouvaient se produire la nuit pendant une charge nulle. Ils pouvaient survenir la nuit lors de sauvegardes diffĂ©rentielles et d'une charge moyenne. Ils pouvaient se produire le week-end pendant des sauvegardes complĂštes et une charge Ă©levĂ©e. Une dĂ©gradation Ă©vidente de la situation a Ă©tĂ© observĂ©e. Au dĂ©part, c'Ă©tait une fois par an, puis une fois tous les six mois. À la fin de ma patience, c'Ă©tait deux fois par semaine.
J'ai blĂąmĂ© la mĂ©moire vive. Mais je n'ai pas pu arrĂȘter la poubelle mĂȘme le week-end et faire fonctionner Memtest. Nous attendions les jours fĂ©riĂ©s de mai. Pendant les jours fĂ©riĂ©s de mai, j'ai exĂ©cutĂ© Memtest et... aucune erreur n'a Ă©tĂ© trouvĂ©e.

J'étais émerveillé et j'ai décidé de prendre des vacances. Pendant que j'étais en vacances, la poubelle n'a pas rencontré de blocage. Et quand je suis revenu au travail un lundi, la poubelle était gelée. Elle a survécu à la sauvegarde complÚte et s'est immédiatement bloquée aprÚs. Une telle rentrée de vacances m'a poussé à décider de déplacer physiquement les disques de la machine invitée vers un autre hÎte.

Et, bien qu'il soit depuis longtemps connu qu'il ne faut rien faire de sĂ©rieux le premier jour aprĂšs des vacances, bien que je me sois prĂ©parĂ© Ă  ne pas travailler tout le chemin du travail, mon indignation face Ă  un nouveau blocage a chassĂ© de ma tĂȘte tant la prĂ©paration que les rĂ©solutions...

Les disques physiques ont Ă©tĂ© dĂ©placĂ©s vers un autre hĂŽte. Connexion Ă  chaud. Dans les paramĂštres de stockage, sous l'onglet Disques des disques apparaissent. Dans l'onglet Datastores les stockages sur ces disques ne sont pas lĂ . RafraĂźchir ne s'affichent pas. Eh bien, bien sĂ»r, la premiĂšre pensĂ©e est — Ajouter du stockage. L'assistant d'ajout indique ce qu'il supporte. Bien sĂ»r, il prend en charge VMFS. Je n'en doutais pas. Un coup d'Ɠil rapide aux messages de l'assistant Ă  chaque Ă©tape : Suivant, Suivant, Suivant, Terminer. Mon regard n'a mĂȘme pas effleurĂ© le petit cercle jaune avec un point d'exclamation en bas de la fenĂȘtre Ă  l'une des Ă©tapes de l'assistant.

À la fin de l'assistant, un nouveau Datastore est apparu dans la liste... ainsi que des Datastores provenant des autres disques physiques.

Je passe Ă  la navigation dans le Datastore nouvellement ajoutĂ©, et il est... vide. Évidemment, je suis de nouveau tombĂ© dans l'Ă©tonnement. 8 heures du matin, les 15 premiĂšres minutes au travail aprĂšs des vacances, je n'ai mĂȘme pas encore remuĂ© le sucre dans mon cafĂ©. Et voilĂ  ça. La premiĂšre pensĂ©e a Ă©tĂ© — je n'ai pas tirĂ© le bon disque de l'hĂŽte 'd'origine'. J'ai vĂ©rifiĂ© si le Datastore recherchĂ© est prĂ©sent dans l'hĂŽte 'd'origine' : non, il n'est pas prĂ©sent. La deuxiĂšme pensĂ©e Ă©tait : « putain ! ». Je ne suis pas sĂ»r, mais je pense que la troisiĂšme, la quatriĂšme et au moins la cinquiĂšme pensĂ©e Ă©taient similaires.

Pour dissiper les doutes, j'ai rapidement installé une nouvelle version d'ESXi, pris un disque aléatoire et, tout en lisant attentivement, j'ai parcouru les étapes de l'assistant. Oui. Lors de l'ajout d'un Datastore avec l'assistant, toutes les données sur le disque sont perdues sans possibilité de revenir en arriÚre ou de récupérer les données. Plus tard, j'ai lu sur un forum une évaluation de ce design d'assistant : shitsome crap. Et j'ai totalement été d'accord.

À partir de la sixiĂšme pensĂ©e, les idĂ©es ont pris un tournant plus constructif. D'accord. L'initialisation prend quelques secondes mĂȘme pour un disque de 3 To. Cela signifie que c'est un formatage de haut niveau. Cela veut dire que seule la table de partitions a Ă©tĂ© réécrite. Cela signifie que les donnĂ©es sont toujours lĂ . Donc, maintenant, recherchons un programme de dĂ©formatage et voilĂ .

Je démarre la machine avec l'image de démarrage de Strelec... Et je découvre que les programmes de récupération de partitions connaissent tout, sauf VMFS. Ils connaissent, par exemple, le formatage des partitions Synology, mais pas VMFS.

Le choix de programmes n'est pas encourageant : au mieux, GetDataBack et R.Saver trouvent des partitions NTFS avec une structure de répertoire vivante et des noms de fichiers valides. Mais cela ne me satisfait pas. J'ai besoin de deux fichiers vmdk : avec le disque systÚme et le disque des fichiers poubelle.

Et lĂ , je comprends que je vais probablement devoir installer Windows et restaurer Ă  partir d'une sauvegarde de fichiers. En mĂȘme temps, je me rappelle que j'avais un root DFS lĂ -bas. Et aussi un systĂšme de droits d'accĂšs aux dossiers des dĂ©partements totalement fou par son ampleur et sa complexitĂ©. Ce n'est pas une option. La seule option acceptable en termes de temps est de restaurer l'Ă©tat du systĂšme et du disque avec les donnĂ©es et tous les droits.

Encore des recherches sur Google, des forums, des KB, et encore des lamentations : VMware ESXi ne prévoit pas de mécanisme de récupération des données. Tous les fils de discussion se terminent de deux maniÚres : soit quelqu'un a récupéré ses données grùce à DiskInternals VMFS Recovery, qui n'est pas bon marché, soit un spécialiste qui promeut activement ses services a aidé. vmfs-tools et dd. La solution d'acheter une licence pour DiskInternals VMFS Recovery à 700 $ n'est pas envisageable. L'accÚs d'un tiers venu d'un « territoire potentiel adversaire » aux données de l'entreprise n'est pas non plus une option. Il a cependant été découvert que UFS Explorer peut également lire les sections VMFS.

DiskInternals VMFS Recovery

A été téléchargé et la version d'essai a été installée. Le programme a réussi à voir la partition VMFS vide :

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

En mode Undelete (Fast Scan) a également trouvé le Datastore usé avec des dossiers machines virtuelles ayant des disques à l'intérieur :

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

L'aperçu a montré que les fichiers étaient vivants :

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

Le montage de la partition dans le systĂšme a Ă©tĂ© rĂ©ussi, mais pour une raison inconnue, tous les trois dossiers contenaient la mĂȘme machine virtuelle. Bien sĂ»r, par loi de la malchance, ce n'Ă©tait pas celle requise.

Trois lignes de honteLa tentative faite pour pirater le logiciel s'est soldée par un échec. En revanche, j'ai pu pirater UFS Explorer.

Je suis extrĂȘmement opposĂ© au vol de logiciels. Je ne prĂŽne absolument pas l'utilisation de moyens pour contourner la protection contre l'utilisation non autorisĂ©e.

J'étais dans une situation catastrophique et je n'étais absolument pas fier des mesures que j'avais prises.

UFS Explorer

Le scan du disque a montrĂ© la prĂ©sence de 7 nƓuds. Le nombre de nƓuds coĂŻncidait de façon "Ă©tonnante" avec le nombre de fichiers *-flat.vmdk dĂ©couverts par VMFS Recovery :

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

La comparaison des tailles de fichiers et des tailles de nƓuds a Ă©galement montrĂ© une correspondance au byte prĂšs. Les noms des fichiers *-flat.vmdk ont Ă©galement Ă©tĂ© rĂ©cupĂ©rĂ©s, ainsi que leur appartenance aux machines virtuelles.

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

En fait, les disques vmdk du point de vue d'ESXi se composent de deux fichiers : un fichier de données (<nom de la machine>-flat.vmdk) et un fichier de « métadonnées » du disque (<nom de la machine>.vmdk). Si vous téléversez le fichier *-flat.vmdk depuis une machine locale dans le Datastore, ESXi ne le reconnaßtra pas comme un fichier disque valide. La base de connaissances de VMware contient un article sur la façon de créer manuellement un fichier de descripteur de disque : kb.vmware.com/s/article/1002511, mais je n'ai pas eu besoin de le faire, j'ai simplement copié le contenu des fichiers correspondants à partir de l'aperçu du contenu du fichier dans DiskInternals VMFS Recovery :

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

AprĂšs 4 heures d'extraction de 2,5 To de nƓud depuis UFS Explorer et 20 heures de chargement dans le Datastore de l'hyperviseur, les fichiers de disque rĂ©cupĂ©rĂ©s ont Ă©tĂ© connectĂ©s Ă  une nouvelle machine virtuelle. Les disques ont Ă©tĂ© reconnus. Aucun perte de donnĂ©es n'a Ă©tĂ© constatĂ©e.

Nous rĂ©cupĂ©rons des machines virtuelles Ă  partir d'un Datastore mal initialisĂ©. L'histoire d'une bĂȘtise avec une fin heureuse.

Source : habr.com

Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS đŸ”„ Acheter un hĂ©bergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster