Mon Ubuntu 12.04.1 fonctionnant sur virtualbox a manqué d’espace lors de l’installation du logiciel, et il est maintenant pas de redémarrage . J'ai des fichiers à récupérer. J'ai le fichier ubuntu64.vdi
sur mon ordinateur portable Windows 7 (hôte) et je me demandais s'il était possible de récupérer les fichiers à partir du fichier vdi.
En parallèle, j'ai généré une nouvelle machine 12.04.1 sur une virtualbox dans le même ordinateur portable, et j'utiliserai celle-ci à la place de celle borkée.
Je peux ajouter le borked vdi
à la liste des disques du disque de travail. Ensuite, j'ai utilisé gnome nautilus pour monter le disque bouché.
Je peux trouver les fichiers ici, mais ils ont environ 2 mois. Je pense que cela coïncide avec la dernière fois que j'ai créé un instantané de la machine sur une boîte virtuelle, mais pas la dernière fois que j'ai eu une machine en état de marche, qui était hier. Existe-t-il un moyen de monter le vdi
hier, juste avant son crash?
ÉDITÉ:
Voici ce que Virtual Media Manager
me dit à propos de mon fichier ubuntu64.vdi
:
EDITED2:
J'ai copié mon ubuntu.vdi
sur une clé USB externe avec beaucoup d'espace disque. J'ai essayé d'utiliser Windows pour le cloner, mais j'ai eu une erreur:
J'ai essayé la même chose du VM en cours de fonctionnement via un dossier partagé du lecteur USB et le clonage a commencé. Pris un bon moment, mais fini avec succès:
root@precise64:/media/sf_E_DRIVE/copy_of_ubuntu64_vm_folder_20140224/ubuntu64#
VBoxManage clonehd ubuntu64.vdi ubuntu64.raw --format RAW
0%...
10%...20%...30%...40%...50%...60%...70%...80%...90%...100%
Clone hard disk created in format 'RAW'. UUID: 90f99198-18e1-40ee-85fe-c083dcbb1ac3
EDITED3:
Après avoir créé le fichier raw, j'exécute testdisk
avec Deeper Search
, je reçois une liste comme celle-ci:
Après Deeper Search
terminé, je reçois une liste comme celle-ci:
Mais je ne sais pas lequel est quel instantané ... Des idées?
Si nous utilisons Ubuntu en tant qu'hôte, nous pouvons convertir notre disque .vdi en un disque brut avec la commande suivante:
VBoxManage clonehd <sourcename> <clone.raw> --format RAW
Nous pouvons alors ouvrir testdisk avec ce fichier pour récupérer des fichiers sur l’image du lecteur virtuel (voir aussi ci-dessous):
testdisk <clone.raw>
Si l'image de lecteur VDI cassé est toujours enregistrée avec Virtual Box, nous pourrons peut-être ajouter cette image en tant que lecteur à notre nouvelle machine virtuelle:
Lancez votre Ubuntu virtuel auquel nous avons ajouté le .vdi cassé mais ne montez pas le lecteur .
Créez un répertoire sur une partition montée pour stocker les données collectées (par exemple, ~/rescued
),
Installer testdisk sur la machine virtuelle.
Lancez testdisk depuis un terminal à cet endroit:
Sudo testdisk
Choisissez le lecteur approprié pour la collecte des données (affiché ici pour /sdb
) et sélectionnez [Proceed]
Choisissez la structure de partition appropriée (généralement Intel
name__)
Sélectionnez [Analyse]
- [Quick Search]
Sélectionnez la partition contenant les données à récupérer (ici, une seule partition NTFS était présente):
Presse P pour lister les fichiers sur cette partition.
Accédez au répertoire contenant les données. Affichez les noms de fichiers pour vous assurer que vous avez choisi les bons.
Sélectionnez les répertoires ou les fichiers à récupérer à l'aide de : . Tous les fichiers/répertoires sélectionnés seront marqués en vert:
Appuyez sur les majuscules C copier tous les répertoires/fichiers sélectionnés dans le répertoire de secours qui sera sélectionné à l’étape suivante.
Choisissez un répertoire sur la ou les partitions montées de votre machine virtuelle Ubuntu pour stocker les données récupérées:
Presse c pour commencer à copier les données du fichier .vdi cassé vers notre répertoire de secours dans votre VM saine.
Si nous ne pouvons pas voir nos fichiers avec l’option [Quick Search]
dans 6. , il se peut que nous devions effectuer un [Deeper Search]
. Cela listera également les partitions précédemment supprimées et écrasées. Nous devons donc nous assurer de sélectionner les partitions appropriées où résident nos données.
Si nous avions pris des instantanés du .vdi, nous pourrions les trouver dans ~/.VirtualBox/Machines/<Name of Machine>/Snapshots/{###}.vmdk
mais chaque fois que nous aurions utilisé la fonctionnalité d'instantané de Virtual Box, tout changement d'un instantané sera écrit dans un fichier différentiel.
Pour fusionner le fichier différentiel avec le disque dur, nous devons supprimer tous les instantanés (ce qui n'est probablement pas ce que nous souhaitons, car nous pourrions simplement restaurer un instantané précédent plutôt que d'appeler pour récupérer les données), ou nous devons cloner le lecteur de la machine en utilisant:
VBoxManage clonehd <name_of_source> <clone>
Ensuite, nous lions le clone à notre secours VM comme indiqué ci-dessus.
L'écriture sur le fichier .vdi endommagé ne doit être effectuée qu'une fois les données sauvegardées, car cela pourrait endommager davantage le système de fichiers.
Si notre secours Ubuntu est trop petit pour contenir les données sauvées, nous pouvons créer un autre nouveau lecteur virtuel à lier à la machine virtuelle. Ce lecteur doit ensuite être monté dans le VM pour pouvoir y enregistrer des données à partir du disque de test.
1) Essayez de récupérer l’instantané par l’UUID, utilisez le hack suivant:
entrez la commande C:> VBoxManage clonehd <UUID> CloneDisk.vdi
J'espère que ça aide, j'ai trouvé la solution ici: ( https://forums.virtualbox.org/viewtopic.php?t=791 )
2) si les étapes 1) ne fonctionnent pas, voici une autre étape que vous pouvez essayer. Comment cloner l’état actuel d’un disque:
Cette solution est d'ici: ( http://www.i-m-code.com/blog/blog/2012/02/04/virtualbox-clone-snapshots/ ) Les deux parlent principalement du même.
J'ai eu un système Linux corrompu à /
et fsck
n'a pas pu le réparer . J'ai utilisé l'approche simple suivante:
/home/user/
. N'oubliez pas de copier les fichiers cachés (fichiers de paramètres).A bien fonctionné pour moi. La corruption du disque ne faisait qu’entraver le démarrage, il n’y avait aucune perte de données dans mon dossier personnel.