Foremost : Erreur de segmentation

Résolu/Fermé
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 - 7 sept. 2009 à 08:38
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 - 12 sept. 2009 à 07:06
Bonjour,

Utilisant Foremost v 1.5.3 pour récupérer des fichiers (foremost -w -i /dev/sda5 -o /recovery/foremost) j'obtient le message "erreur de segmentation" en cours d'audit : je ne peut donc obtenir un audit complet.

- Existe il une commande pour que le programme ignore le segment défectueux et poursuive le scan ?
- Est ce grave docteur ? (intégrité du disque)

De plus ayant lancé une récupération sur ce qu'il m'avait détecté j'obtient :
fn=/home/bullshit/output/pdf/426227520.pdf bytes=1990656
foremost: Error writing file
et le répertoire "home/MOI/output" reste désesperément vide :'(

quid, quo, quando ?
Merci d'avance.

Pensée du jour :" [Shift Del] c'est bien, un cerveau c'est mieux"

5 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
7 sept. 2009 à 08:52
Salut,

Extrait du man : https://linux.die.net/man/1/foremost
-s number
    Skips number blocks in the input file before beginning the search for headers. ie. foremost -s 512 -t jpeg -i /dev/hda1

Examples
Search for jpeg format skipping the first 100 blocks
foremost -s 100 -t jpg -i image.dd 
Peut être une piste...
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45
7 sept. 2009 à 09:20
Merci jipicy,
Juste un petit post avant de potasser et de tester...

Etrangement la commande de récupération [ sudo foremost -t pdf -i /dev/sda5 ] a donné des résultats étonnants. En effet j'ai récupéré bien plus que les quelques fichiers listés dans le fichier d'audit interrompu (moins d'une dizaine) et j'ai dépassé la capacité restante de ma partition (5Go étaient libres) *ooops*.
Ceci est l'explication du répertoire de récupération resté apparement vide : le processus n'était pas complet : j'ai fais de la place et les fichiers ont pu se copier. Coup de bol je n'ai apparement pas explosé ma partition.
Donc, au passage, un conseil aux utilisateurs de Foremost ayant le même lézard : ne pas lancer de restauration dans ce cas sauf à être certain d'avoir assez de place ou alors récupérer les fichiers un par un.

C'est puissant ce truc !!!!

jipicy, si tu avais la commande pour "skipper" les blocs après les n premiers blocs scannés, ça ferait bien mon affaire... (de façon à pouvoir scanner avant et après le bloc défectueux en procédant par tatonnage)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897 > Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024
7 sept. 2009 à 11:29
Euh... là ça risque de dépasser mon entendement ;-((

Par contre, si on se fie au message d'erreur et le nombre d'octets (bytes) lu : 1990656
Si on considère qu'un bloc à une taille de 512 octets

1990656 que divise 512 égale 3888

Ce qui nous amènerait à la commande :
foremost -w -s 3888 -i /dev/sda5 -o /recovery/foremost2
Tout ça sous réserve, n'étant absolument pas sûr de ce que j'avance...

;-))
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45 > jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020
8 sept. 2009 à 00:15
Merci,

Bon de toute façon il n'avait détecté que une dizaine de pdf (les fichiers effacés par erreur sont des pdf) avant de me renvoyer sur les roses donc les récupérer un par un est jouable, puis pour la partie située après le bloc défectueux j'utiliserai ta commande en espérant que la lecture des blocs est linéaire...
0
Non2 Messages postés 5103 Date d'inscription mercredi 19 décembre 2007 Statut Contributeur Dernière intervention 15 juillet 2015 757
7 sept. 2009 à 11:14
Bonjour,

Je ne suis pas spécialiste, mais sur SourceForge, ils en sont à la version 1.5.6. S'il s'agit d'un bug de la 1.5.3, il se peut qu'il soit corrigé (je n'ai pas essayé).
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45
8 sept. 2009 à 00:20
Non2 merci :D

Je suis toujours sur Hardy (l'effacement accidentel c'est parce que je suis en train de faire de la place pour me mettre à jour sans effacer trop d'archives). Sais tu si la v1.5.6 est compatible, je n'ai rien vu sur SourceForge à ce sujet et mon Gestionnaire de mise à jour est muet ?
0
Non2 Messages postés 5103 Date d'inscription mercredi 19 décembre 2007 Statut Contributeur Dernière intervention 15 juillet 2015 757
8 sept. 2009 à 00:41
Salut,

En fait, je n'en ai aucune idée. J'avais trouvé un sujet qui en parlait, essayé, et j'étais tombé sur la même erreur.
Comme je n'en n'avais pas un besoin immédiat, j'ai laissé tomber, puis j'ai vu ton topic. J'ai cherché à nouveau et trouvé ça, mais je n'avais pas le temps aujourd'hui d'essayer.

Mais ce sont des sources à compiler, et ils n'indiquent aucune dépendance, donc je ne vois pas pourquoi ce ne serait pas compatible.

Une erreur de segmentation, si je me souviens bien, c'est lorsque les données lues et mises en mémoire vont au-delà de la zone mémoire réservée à une variable. Donc, même si ça refait le même coup, avec les sources, il y a moyen d'aller vérifier dans le code. Comme c'est un programme d'origine ancienne, il faudra peut-être transformer une variable statique en variable dynamique avec une allocation de mémoire fixée en fonction de la taille des données lues. Mais tout ça, pour moi, c'est très loin, j'avoue franchement que je ne m'en sens plus capable sans y consacrer beaucoup, beaucoup de temps.
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45
8 sept. 2009 à 01:03
'soir :)
Même en y consacrant du temps, euh comment dire ? J'y entrave que pouic !
Merci pour ceux à qui ça parlera pour me part je fait comme dab' : système D et prières :/. De toute façon j'intalle la 9.04 après effacement multipasse des partitions et reformatage ces prochains jours (nouveau disque dur 500Go en plus = réorganisation complète)
A plus et merci encore :)

Ah oui juste un truc : quelqu'un connait il une commande pour demander à foremost de copier les fichiers récupérés ailleurs que dans home/MOI/output : à savoir sur une autre partition si la chose est possible ?
0
Non2 Messages postés 5103 Date d'inscription mercredi 19 décembre 2007 Statut Contributeur Dernière intervention 15 juillet 2015 757
8 sept. 2009 à 01:13
Ça veut juste dire que j'ai une vague idée de l'origine du problème, mais que comme je n'ai plus pondu une ligne de code depuis des années, je ne me le sens pas bien d'aller chercher l'erreur et de la corriger. Peut-être un programmeur pourra-t'il confirmer ce que je suppose (ou l'infirmer).

Alors je me suis dit qu'en compilant la version de SourceForge, il y avait une chance que le problème soit résolu dans cette version-là. Comme la compilation se fera sur ta machine, il y a toutes les chance d'avoir un programme compilé tip-top pour ta configuration.

Excuse-moi si je n'ai pas été clair, mais j'ai écrit au fur et à mesure que je pensais. ;-)

Edit : dans le man foremost, ils indiquent l'option -o pour changer le répertoire de sortie :
-o directory
Recovered files are written to the directory directory.
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45
8 sept. 2009 à 01:17
j'avais vaguement pigé que foremost était largué et que la nouvelle version était peut être meilleure donc no problemo. Pour le reste je laisse ça à ceux qui savent ;).

merci pour la commande ("man foremost" : bon sang mais c'est bien sûr ! :P désolé)
0
Non2 Messages postés 5103 Date d'inscription mercredi 19 décembre 2007 Statut Contributeur Dernière intervention 15 juillet 2015 757 > Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024
8 sept. 2009 à 01:21
De rien. ;-)
Mais bon, ceux qui savent passeront peut-être par là.
Bonne nuit.
0
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45 > Non2 Messages postés 5103 Date d'inscription mercredi 19 décembre 2007 Statut Contributeur Dernière intervention 15 juillet 2015
8 sept. 2009 à 01:25
Fort juste et c'est à souhaiter (Toujours bon "d'ouvrir" ou d'aprofondir un sujet au delà de la simple bidouille et du protocole de manipulation bête et méchant).
J'installe la nouvelle version et je repasserai
Bonne nuit.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Illitch Messages postés 1582 Date d'inscription jeudi 10 avril 2008 Statut Membre Dernière intervention 3 janvier 2024 45
12 sept. 2009 à 07:06
Je repasse,

Apparement la version 1.5.6 de foremost corrige le problème (à moins que l'erreur n'ai été causée par le manque de place sur le volume de destination, voir poste n°2)

La commande suivante permet de choisir un autre répertoire que le défaut = /home/utilisateur/output (ici /media/disk/Recovery -> à remplacer par votre chemin - /dev/sda5 est la partition à scanner -> à changer par la votre)
sudo foremost -o /media/disk/Recovery -t pdf -i /dev/sda5

Lien vers la dernière version foremost (aujourd'hui 1.5.6) : http://foremost.sourceforge.net/
/!\ les développeurs de fomemost le classent encore instable (low : donc utilisable)

Merci à tous :)
0