Mon Ubuntu 12.04.1 fonctionnant sur virtualbox a manqué d'espace pendant que j'installais un logiciel dessus et maintenant il ne redémarre pas . J'ai des fichiers dont j'ai besoin pour en récupérer. J'ai le ubuntu64.vdi
fichier sur mon ordinateur portable Windows 7 (hôte) et je me demandais s'il y avait un moyen 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 virtualbox dans le même ordinateur portable, et je vais utiliser celle-ci à la place de celle borked.
Je peux ajouter le borked vdi
à la liste des disques dans celui qui fonctionne. Ensuite, j'ai utilisé gnome nautilus pour monter le disque borked.
Je peux y trouver les fichiers, mais ils ont environ 2 mois. Je pense que cela coïncide avec la dernière fois que j'ai fait un instantané de virtualbox de la machine, mais pas la dernière fois que j'ai eu une machine qui fonctionnait, c'était hier. Existe-t-il un moyen de monter le à vdi
partir d'hier, juste avant qu'il ne s'écrase?
ÉDITÉ:
Voici ce qui Virtual Media Manager
me dit sur mon ubuntu64.vdi
dossier:
EDITÉ2:
Je l'ai copié ubuntu.vdi
sur un périphérique 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 à partir de la machine virtuelle de travail via un dossier partagé de la clé USB, et cela a commencé le clonage. A pris un bon moment, mais a terminé 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
EDITÉ3:
Après avoir créé le fichier brut, je cours testdisk
avec Deeper Search
, j'obtiens une liste comme celle-ci:
Ater Deeper Search
a terminé, je reçois une liste comme celle-ci:
Mais je ne sais pas lequel est quel instantané ... Des idées?
la source
rsync
.Vboxmanage clonehd 2208...
(copiez l'UUID le plus récent ici). Voir serverfault.com/a/506581/195528Réponses:
De la ligne de commande
Dans le cas où nous utilisons Ubuntu comme hôte, nous pouvons convertir notre disque .vdi en disque brut avec la commande suivante:
Nous pouvons ensuite ouvrir testdisk avec ce fichier pour récupérer des fichiers sur l'image du lecteur virtuel (voir aussi ci-dessous):
D'une machine virtuelle
Dans le cas où l'image du 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:
Démarrez 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 là pour contenir les données récoltées (par exemple
~/rescued
),Installez testdisk sur la machine virtuelle.
Lancez testdisk depuis un terminal:
Choisissez le lecteur approprié pour récolter les données (ici illustré pour
/sdb
) et sélectionnez[Proceed]
Choisissez la disposition de partition appropriée (généralement
Intel
)Sélectionnez
[Analyse]
-[Quick Search]
Sélectionnez la partition qui contient les données à récolter (ici, une seule partition NTFS était présente):
Appuyez sur P pour répertorier les fichiers de cette partition.
Accédez au répertoire contenant les données. Affichez les noms de fichiers pour vous assurer que vous avez bien choisi les bons.
Sélectionnez les répertoires ou fichiers à récolter en utilisant : . Tous les fichiers / répertoires sélectionnés seront marqués en vert:
Appuyez sur les majuscules C pour 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 contenir les données sauvées:
Appuyez sur c pour commencer à copier les données du fichier .vdi cassé vers notre répertoire de secours dans votre machine virtuelle saine.
Remarques:
Dans le cas où nous ne pouvons pas voir nos fichiers avec l'
[Quick Search]
option en 6. nous pouvons avoir à effectuer un[Deeper Search]
. Cela répertorie également les partitions supprimées et écrasées précédentes. 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 fonction d'instantané de Virtual Box, toutes les modifications apportées à un instantané seront écrites dans un fichier différentiel.Pour fusionner le fichier différentiel avec le disque dur, nous devons supprimer tous les snapshots (ce qui n'est probablement pas ce que nous voulons car nous pourrions simplement restaurer le snapshot précédent plutôt que d'appeler à la récupération des données), ou nous devons cloner le lecteur de la machine en utilisant:
Ensuite, nous lions le clone à notre machine virtuelle de secours comme illustré ci-dessus.
L'écriture dans le fichier .vdi cassé ne doit être effectuée qu'après la sécurité des données, car cela pourrait endommager davantage le système de fichiers.
Dans le cas où notre secours Ubuntu est trop petit pour contenir les données récupérées, nous pouvons créer un autre nouveau lecteur virtuel pour le lier à la machine virtuelle. Ce lecteur doit ensuite être monté dans la machine virtuelle pour pouvoir y enregistrer les données de testdisk.
la source
Deeper Search
pour le parcourir à nouveau.Deeper Search
, et après quelques heures, j'ai parcouru à nouveau le contenu que je voulais récupérer: ils pointent toujours vers une version été 2013 de la machine virtuelle, plus tôt que le simple montage de la partition avec gnome nautilus, qui me donnait un janvier Version 2014, mais toujours pas en mesure de trouver les fichiers d'il y a deux jours.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 cela aide, j'ai trouvé la solution ici: ( https://forums.virtualbox.org/viewtopic.php?t=791 )
2) si les étapes de 1) ne fonctionnent pas, voici d'autres étapes que vous pouvez essayer. Comment cloner l'état actuel d'un disque:
Cette solution est d'ici: ( http://www.im-code.com/blog/blog/2012/02/04/virtualbox-clone-snapshots/ ) Les deux parlent principalement de la même chose.
la source
J'ai eu un système Linux corrompu
/
et je n'aifsck
pas pu le réparer . J'ai utilisé l'approche simple suivante:/home/user/
dossier. 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.
la source