Oops ! mkswap m'a tuer [Résolu]

Oops ! mkswap m'a tuer [Résolu] - Linux et OS Alternatifs

Marsh Posté le 15-12-2004 à 11:28:05    

J'ai lancé un "mkswap /dev/sdc2" alors que "/dev/sdc2" est mon /home ...
Je viens de faire une image de la partition, mais j'aimerais bien la restaurer malgré tout ... Que puis-je faire ?
 
Je précise qu'elle est toujours montée en ce moment m^eme en ext2, mais que du coup elle para^it "vide".
 
PS: Je suis très surpris que mkswap ne m'ai pas averti que /dev/sdc2 était monté ...


Message édité par glacote le 15-12-2004 à 11:57:49
Reply

Marsh Posté le 15-12-2004 à 11:28:05   

Reply

Marsh Posté le 15-12-2004 à 11:49:07    

mkswap ne fait que changer la signature de la partition, après un rapide coup d'oeil aux sources.
 
Essaye voir e2fsck sur l'image pour voir, ca devrait marcher.Si ca ne marche pas, essaye d'utiliser un autre superblock (-b 8193 par ex)


Message édité par ory le 15-12-2004 à 11:50:16
Reply

Marsh Posté le 15-12-2004 à 11:56:57    

Une rapide recherche m'a aiguillé sur:
 
Channel16: restauration manuelle fichier-par-fichier avec interface graphique
 
UnRM: en ligne de commande.
 
Linux Disk Editor: permet de faire tout ce qu'on veut sur une partition ext2, très bas niveau.
 
Rappel: dans une partition montée en ext3 la journalisation force à mettre à zéro les champs d'affectation des inoeuds, ce qui rend le "undelete" impossible dans presque tous les cas.
 
En revanche, ça m'a fait pensé que ma partition était en ext3. Comme mkswap a la bonne idée de ne pas toucher au premier bloc, le journal est sauf et je m'en suis sorti ainsi:

Code :
  1. mount -o remount,ro /home
  2. dd if=/dev/sdc2 |gzip > /path/to/somewhere/safe.img.gz
  3. fsck -Cf /dev/sdc2
  4. mount -o remount,rw /home


 
Ah c'est beau quand m^eme la journalisation ...

Reply

Marsh Posté le 15-12-2004 à 11:57:34    

ory a écrit :

mkswap ne fait que changer la signature de la partition, après un rapide coup d'oeil aux sources.
 
Essaye voir e2fsck sur l'image pour voir, ca devrait marcher.Si ca ne marche pas, essaye d'utiliser un autre superblock (-b 8193 par ex)


 
Exact, merci beaucoup, c'est effectivement ce que j'avais tenté ... avec succès.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed