Bonjour,
Merci pour la r�ponse : c'est exactement ce que j'ai fait entre temps ;-)
Un peu plus empirique mais l'id�e est l� :
Comme il n'y avait pas de donn�e avant, ca donnait une suite de . (ascii).
Du coup, j'ai coup� la partition en petits bouts, chercher la fin des .
(facile : y'avait un retour de ligne assez rapidement), calculer l'offset,
compar� avec autre partition ext3 similaire pour voir comment �tait le
d�but.
Le fichier est pass� nickel dans les mains de fsck.ext3 ... j'en suis �
recompiler un kernel parce que j'avais oubli� de mettre le loopback device
(honte ...).
Pas beaucoup dormi mais satisfait.
Julien
> Un moyen que je n'ai pas eu le temps de coder / tester / impl�menter en
> shell
> script.
>
> chercher dans la partition les bytes "0x53 0xef" (EXT3_SUPER_MAGIC)
> les premier magic bytes se trouvent � l'offset 0x438 d'une partition
> ext2/3
> normale (c-a-d cree avec mke2fs et les parametres par defaut)
>
> on trouve l'offset_de_la_partition_ancienne avec :
> (offset("0x53 0xef") - 0x438) / 1024
>
> avec ca on peut faire un :
> dd if=/dev/hdX of=/fichier_de_sortie bs=1024
> skip=offset_de_la_partition_ancienne
> et essayer de monter /fichier_de_sortie avec
> mount -o loop /fichier_de_sortie /mnt/...
>
> il y a 1 prolbeme, on risque de trouver beaucoup de bytes "0x53 0xef"
> avant de
> tomber sur le superblock de la partition. Il faut faudra peut-etre essayer
> de
> refaire ca souvent ...
>
> Je n'ai pas trouve de bon moyen pour produire l'offset de tous les bytes
> "0x53
> 0xef" avec grep. Quelqu'un saurait comment faire ? (avec des outils ligne
> de
> commande evidemment)
>
> Voila, c'est une proposition bas-niveau, il y en aura certainement de
> meilleure...
>
>
> Arnaud
>
> PS : comment savoir que les bytes "0x53 0xef" se trouvent a l'offset 0x438
> d'une partition ? :
>
> dd if=/dev/zero of=/tmp/teste3fs bs=512k count=50
> /sbin/mke2fs -j /tmp/teste3fs
> khexedit /tmp/teste3fs chercher ces bytes ... les occurences suivantes
> seront
> dans les backup superblocks...
>
>
> On Monday 15 March 2004 00:57, Julien Escario wrote:
>> Bonjour,
>> Il m'est arriv� un truc vraiment bete :
>> Voil�, je d�monte une partition et je fais un fdisk dessus en modifiant
>> la
>> taille.
>> Seulement je n'ai pas rebooter tout de suite (erreur fatale !) et j'ai
>> fait un mkfs.ext3 dessus sans me rendre compte que le kernel n'avait pas
>> relu la taille de la partition.
>> J'ai donc placer des fichiers dessus et me rendant compte que ce n'�tait
>> pas la bonne taille de fichier, j'ai reboot�. Sans sauvegarder les
>> fichiers qu'il y avait dessus !
>> Du coup, au reboot, le d�but de la partition n'est plus au m�me endroit
>> et
>> fsck.ext3 ne trouve pas le superblock pour monter la partition, normal,
>> le
>> syst�me de fichier commence 900 Mo plus loin ...
>> Depuis j'ai tout reformater convenablement en gardant une image de la
>> partition incrimin�e (fait avec dd).
>> Ayant besoin des fichiers non sauvegarder que j'ai copi� betement,
>> j'aimerais savoir s'il est possible de r�cup�rer mon syst�me de fichier
>> m�me avec un blanc de 900 Mo devant ...
>> Sachant que je ne sais pas la taille (et donc le nombre de blocks) que
>> j'ai rajout�.
>> Si qqun a une id�e, elle est la bienvenue.
>>
>> Merci
>>
>> Julien Escario
>> ---------------------------------------
>> $A = eval {($A*$A-1)/($A-1)} || die 1;
>> L'incr�mentation ou la vie !
>> ---------------------------------------
_______________________________________________
gull mailing list
[EMAIL PROTECTED]
http://lists.alphanet.ch/mailman/listinfo/gull