J'ai écrit une image ISO sur mon disque dur avec sudo dd if=image.iso of=/dev/sda
. Je voulais dire /dev/sdc
, et maintenant courir sudo fdisk -l
ne renvoie qu’une partition sur / dev / sda alors qu’il est supposé y en avoir 6. Est-il possible de récupérer mes données?
Je n'ai pas encore arrêté (redémarré) mon ordinateur.
hard-drive
data-recovery
dd
Vache Baaing
la source
la source
dd
a de nouveau montré son affreux visage «Destructeur de données» :-( Il a écrasé la tête du lecteur (correspondant à la taille du fichier iso). Les données qui s'y trouvaient sont perdues. Avez-vous une sauvegarde assez récente du les fichiers que vous ne pouvez pas vous permettre de perdre? Sinon , vous devez préparer à travailler dur pour réparer les systèmes de table de partitions et fichiers, mieux sur une copie clonée en utilisant Testdisk , et si cela ne fonctionne pas, même le travail plus difficile de récupérer des données de fichiers se trouvent « derrière » la partie du lecteur qui est écrasée (vous pouvez utiliser PhotoRec à cette fin. Voir ce lien, cgsecurity.orgdd
a de nouveau retrouvé son affreux visage" Destructeur de données "" - Sauf que cela n'a rien à voir avecdd
, il s'agit d'accéder directement à un périphérique de disque en tant que root. Tout autre outil aurait pu avoir le même effet.cat image.iso > /dev/sda
aurait eu exactement le même effet. Oupv ...
. Ou, dans une certaine mesure, mêmevi /dev/sda
. En fait, cela me rappelle l’histoire de Linus Torvalds qui a essayé de se connecter à un réseau en utilisant son disque dur plutôt que son modem, en écrasant le début de son disque avec la poignée de main d’appel entrant . Rien à voir avecdd
..iso
fichier? Avez-vous interrompudd
ou at-il fonctionné?dd
comme ceci (pour cela), je pense donc que l’avertissement «Destructeur de données» est pertinent, même si l’avertissement tout à fait correct devrait être plus long: "Ne pas utiliser une ligne de commandesudo dd if=image.iso of=/dev/sdx
pour cloner en masse Utilisez un outil qui vous aide à identifier et à sélectionner le bon périphérique cible et qui possède un point de contrôle final, afin de pouvoir vérifier que vous clonerez du fichier iso sur le bon périphérique cible, par exemple StartupDiskCreator, Disks, mkusb. , Win32DiskImager. "Réponses:
Comme votre ordinateur est toujours allumé, vous avez de bonnes chances de sauver des choses.
Tout d'abord,
sysfs
expose la vue en mémoire du noyau des tables de partition. Pour le moment, votre noyau n'a pas relu la table du disque et il se souvient de votre partitionnement. A l'intérieur/sys/block/sda/
, il devrait y avoir un répertoire pour chaque partition. Chacun de ces sous-répertoires contient un fichierstart
et un fichiersize
, qui représente l'emplacement et la taille de la partition, en secteurs. Exécutezfdisk
puis recréez chaque partition (dans l'ordre!) Avec les informations dans sonsysfs
répertoire. Notez que vous devrez également créer une nouvelle table de partitions. Assurez-vous que votre nouvelle table de partition est identique à la précédente. Vous pouvez vérifier cela dans/sys/block/sda
. Si vous voyezsda1
jusqu'àsda7
alors que vous n’avez que 6 partitions, vous aviez probablement le MBR, et sinon c’était probablement du GPT. Vous devez également définir des indicateurs et des types pour ces partitions. Examinez/etc/fstab
et essayez de glaner des informations sur les types de partitions que vous avez, puis consultez Wikipedia pour les convertir en codes pour votre schéma de partitionnement.Étant donné que vous semblez être en mesure d'utiliser votre système de fichiers, il est probable que vous
dd
n'ayez pas pu l'écraser, car la plupart des éléments importants d'un système de fichiers se trouvent au premier plan. Vérifiez/etc/fstab
quelles partitions correspondent à quelle partie de votre système, puis utilisez la quantité de donnéesdd
copiées pour obtenir une estimation de la quantité que vous avez utilisée. Si vous n'avez écrasé qu'une partie d'un système de fichiers, un bon appareilfsck
pourrait peut- être le réparer un peu (mais vous avez perdu une bonne quantité de données).Très probablement, vous avez écrasé
/boot
. Vous devrez réinstaller votre noyau (avecaptitude
) et réinstaller GRUB2 (avecgrub-install
) (dont les premier et deuxième étages ont été détruits). GRUB2 est configuré avec des fichiers/etc
, vous n'avez donc rien à recréer manuellement.la source
/sys/block/sda/*/{start,end}
et recréez vos partitions avec ces informations": pourriez-vous développer un peu cette question? Ce n'est pas une opération banale et semble être le point principal de votre réponse par ailleurs excellente.sudo parted
,unit s
,print all
,quit
.bashrc
autres fichiers point de votre répertoire personnel et tous vos fichiers/etc
, en plus de vos données réelles) sur un autre disque pendant que votre ordinateur en marche fonctionne encore . tar.gz est un bon format pour copier des répertoires entiers (car il préserve les autorisations et les éléments)./boot
ce type est parfaitement "sûr" (modulo littéralement tout le reste à propos de cette situation ) car le noyau n'est pas incertain de rien.Désolé de lire à propos de votre malchance
Je suppose que vous n’avez pas de sauvegarde actuelle, et je suis désolé de vous lire à propos de votre mauvaise chance en utilisant
où vous avez utilisé la lettre de lecteur
x
=a
pour écraser le début de votre disque dur où vous avez stocké beaucoup de données précieuses.Vous n'êtes pas la première personne et je crains que ce ne soit pas la dernière personne touchée par ce problème.
dd
est recommandé sur de nombreux sites Web pour être utilisé comme ceci. C'est une méthode puissante mais dangereuse, car elle fait ce que vous lui dites de se passer de questions. Pour cette raison, il est souvent surnommé "Destructeur de données".@marcelm commente que ce surnom est injuste. Il a raison de dire que l' écriture directe dans un fichier de périphérique en tant que racine est à l'origine du risque . Soyez donc conscient que vous pouvez facilement écraser un disque et détruire des données importantes en écrivant dans le fichier de périphérique correspondant
/dev/sdx
. (Des outils plus sûrs sont listés à la fin de cette réponse.)Récupérer la table de partition, les systèmes de fichiers et / ou le contenu du fichier
Faites le moins possible avec le lecteur et surtout, n'y écrivez rien car cela pourrait aggraver la situation en écrasant les données, qu'il est encore possible de récupérer.
Si vos données sont précieuses, vous devez travailler sur une copie clonée et non sur le lecteur d'origine (partiellement écrasé). Voir ce lien, faites défiler jusqu'à «Réparation avancée d'une table de partition, d'un système de fichiers et / ou de la récupération de fichiers».
Réparer la table de partition et le système de fichiers d'une clé USB
Si vous disposiez d'une table de partition GUID, GPT, une sauvegarde de la table de partition se trouve à la fin du lecteur
/dev/sda
et vous pourrez peut-être restaurer la table de partition principale à partir de cette table de sauvegarde à l'aide de l'outilgdisk
. Voir le manuelman gdisk
pour plus de détails.Vous pouvez éventuellement restaurer la table de partition et les systèmes de fichiers à l’aide de Testdisk à partir de.
http://cgsecurity.org
Lisez les instructions sur le site Web de CGSecurity ainsi que le lien fourni par @ElderGeek. Les partitions ont disparu après une panne de courant lors de l'installation.
Vous pouvez également gérer la restauration de la table de partition et des systèmes de fichiers à l’aide de gpart / gparted conformément au lien fourni par @CSM.
HOWTO: Restauration de partitions perdues dans une table de partition supprimée ou corrompue
PhotoRec : si vous ne parvenez pas à récupérer les systèmes de table et de fichiers de la partition, vous pouvez toujours récupérer certaines données de fichier. Les fichiers en tête de réseau, peut-être 1 à 1,5 Go, sont écrasés et perdus, mais les fichiers situés derrière cette partie du lecteur sont toujours présents. PhotoRec de http://cgsecurity.org est un outil qui permet de récupérer des données "depuis la surface du disque" sans système de fichiers. Les données typiques au début des types de fichiers communs sont utilisées pour l'identification.
Le lien suivant fournit des détails sur PhotoRec,
https://www.cgsecurity.org/wiki/PhotoRec
Vous devez enregistrer les fichiers sur une partition dans un lecteur séparé.
Il n’est pas possible de récupérer la structure de répertoires et les noms de fichiers (et non les autorisations et la propriété), et il existe des problèmes de fragmentation des fichiers, mais de nombreux fichiers peuvent être récupérés par PhotoRec (non seulement photos, ainsi que de nombreux autres types de fichiers courants). Mais, et c’est un gros mais, c’est beaucoup de travail difficile de parcourir la quantité énorme de fichiers non triés pour identifier les fichiers vraiment importants, que vous devez renommer en noms de fichiers significatifs.
Des outils plus sûrs pour créer des lecteurs de démarrage USB avec Ubuntu
À l'avenir, utilisez un outil qui vous aide à identifier et à sélectionner le bon périphérique cible et qui possède un point de contrôle final, afin de pouvoir vérifier que vous clonerez du fichier iso sur le bon périphérique cible, par exemple.
Sous Linux:
gnome-disks
,Sous Windows: Win32DiskImager .
Vous pouvez également utiliser des outils d’ extraction fournissant un point de contrôle final, par exemple:
la source
testdisk
. Également un script pour empêcherdd
d’écrire sur votre / sda / sdb / quelle que soit une bonne idée aussi.Par votre
dd
commande, vous avez écrasé la table de partition de / dev / sda et toutes les données aussi loin que la taille de image.iso.Le mieux que vous puissiez faire est donc de restaurer votre table de partition (avec des tailles exactes) pour récupérer au moins les partitions vers la fin de / dev / sda.
la source
À moins de restaurer à partir d'une sauvegarde, il n'y a aucun moyen de récupérer complètement. DD a écrasé la table de partition et certaines des données du périphérique.
la source
Si votre lecteur est partitionné en partitions séparées
/
et/home
que la/home
partition était postérieure à la/
partition, vous pouvez alors récupérer vos données. Le MBR qui répertorie l'emplacement de la plupart des partitions a été écrasé. Cependant, gparted peut récupérer votre/home
partition.Ce post sur les forums Ubuntu donne quelques idées sur la façon de le faire; J'ai trouvé cela en cherchant "gparted recover partition".
Une fois que vous avez trouvé votre partition perdue (il se peut qu’elle se trouve dans une partition étendue), vous devez l’ajouter comme seule partition de la table des partitions.
Une fois que vous avez fait cela, vous devrez réinstaller Linux, en vous demandant de conserver la partition récupérée
/home
.la source
Testdisk à la rescousse
Je peux personnellement me porter garant pour Testdisk, qui a sauvegardé mes données après avoir copié et collé à plusieurs reprises des instructions
/dev/sdb
et modifié celles-ci sur/dev/sdd
lesquelles était ma clé USB. Une seule fois, j'ai oublié de le changer et je suis allé/dev/sdb
à la poubelle.Configurez votre système pour qu'il n'écrit jamais
/dev/sda
Je recommande fortement de créer un script de wrapper: Empêchez `dd` de détruire le disque dur SSD ou HDD . Cela garantit de
dd
ne jamais écrire,/dev/sda
ni éventuellement/dev/sdb
ni aucun autre de vos périphériques de stockage de masse.la source