Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Bêtise et récupération de fichiers

6 réponses
Avatar
François Boisson
Gag idiot, en testant un système de création d'un lot de comptes par
paquet debian, je ne me suis pas aperçu que l'un d'eux dans mes tests
portait le nom «francois» qui est le nom de mon compte. A la
désinstallation du paquet, mon home a commencé à être détruit.

1) Arrêt et sauvegarde de l'image du disque.

2) Chouette, je suis en ext2 (tant qu'il n'y a pas d'undelete sur ext3,
j'y reste). Donc utilisation de recover. Trois désillusions majeures:

a) recover ne fonctionne pas sur les images de disques
b) On ne peut préciser à la seconde la période de destruction
c) Il met 5s par fichier

... Il y a plus de 65000 fichiers détruits (essentiellement les mails de
la liste Debian, c'est le temps que ça prenait qui m'a alerté, les
messages non effacés de mon courrier ont préservés beaucoup de fichiers
importants).

65000*5s= en gros 4 jours. Impensable...

Il y avait deux types de fichiers que je voulais récupérer

- Des emails essentiels à archiver (accusés de réception) (le +
important)

- Un document openoffice (une feuille de notes). Moins grave, j'ai un
backup complet de mon disque datant du 20 Avril.


J'ai donc développé en vitesse un petit programme qui parcourt l'image
du disque par tranche de 512octets. Quand le bloc commence par «Envelope
to:», c'est le début d'un email, je sauvegarde sauvagement dans un
fichier les 8K suivants et je recommence aux 512 octets d'après (il y a
donc chevauchement).

C'est très rapide, j'ai récupéré tous mes emails (+de 50000) et parmi
eux, à coup de grep en filtrant sur le destinataire (de l'intérêt
d'avoir plein d'adresses), mes 150 emails fondamentaux. Youkaïdi et
soulagement!

Je m'attelle à appliquer la même méthode pour les documents openoffice
mais là, si j'arrive à retrouver une 30 de fichiers openoffice (en me
fondant sur les «magicnumbers»), il est impossible de filtrer ces
fichiers par un grep où même de les ouvrir, apparemment openoffice ne
supporte pas un fichier rallongé par des octets quelconques. Quelqu'un
aurait une idée sur une méthode pour restaurer des fichiers openoffice?


François Boisson


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

6 réponses

Avatar
Jacques-Daniel PILLON
>
Je m'attelle à appliquer la même méthode pour les documents openoffice
mais là, si j'arrive à retrouver une 30 de fichiers openoffice (en me
fondant sur les «magicnumbers»), il est impossible de filtrer ces
fichiers par un grep où même de les ouvrir, apparemment openoffice ne
supporte pas un fichier rallongé par des octets quelconques. Quelqu'un
aurait une idée sur une méthode pour restaurer des fichiers openoffice?


François Boisson





Bonsoir,
je ne sais pas si cela peut vous aider :

http://www-igm.univ-mlv.fr/~dr/XPOSE2004/apierron/StructSXW.html

--
Cordialement
--------------------------------------------
Jacques-Daniel PILLON
--------------------------------------------


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Jacques-Daniel PILLON
>
Je m'attelle à appliquer la même méthode pour les documents openoffice
mais là, si j'arrive à retrouver une 30 de fichiers openoffice (en me
fondant sur les «magicnumbers»), il est impossible de filtrer ces
fichiers par un grep où même de les ouvrir, apparemment openoffice ne
supporte pas un fichier rallongé par des octets quelconques. Quelqu'un
aurait une idée sur une méthode pour restaurer des fichiers openoffice?


François Boisson




Un petit test :

:~/testopenoffice$ unzip test.sxw
Archive: test.sxw
extracting: mimetype
inflating: content.xml
inflating: styles.xml
extracting: meta.xml
inflating: settings.xml
inflating: META-INF/manifest.xml
:~/testopenoffice$ ls
content.xml META-INF meta.xml mimetype settings.xml styles.xml
test.sxw
:~/testopenoffice$

Le document openoffice contient seulement : "Fichier de test openoffice"

On retrouve ce texte dans content.xml (vers la fin):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE office:document-content PUBLIC "-//OpenOffice.org//DTD
OfficeDocument 1.0//EN" "office.dtd">
<office:document-content
xmlns:office="http://openoffice.org/2000/office"
xmlns:style="http://openoffice.org/2000/style"
xmlns:text="http://openoffice.org/2000/text"
xmlns:table="http://openoffice.org/2000/table"
xmlns:draw="http://openoffice.org/2000/drawing"
xmlns:fo="http://www.w3.org/1999/XSL/Format"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:number="http://openoffice.org/2000/datastyle"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns:chart="http://openoffice.org/2000/chart"
xmlns:dr3d="http://openoffice.org/2000/dr3d"
xmlns:math="http://www.w3.org/1998/Math/MathML"
xmlns:form="http://openoffice.org/2000/form"
xmlns:script="http://openoffice.org/2000/script" office:class="text"
office:version="1.0">
<office:script/>
<office:font-decls>
<style:font-decl style:name="Tahoma1" fo:font-family="Tahoma,
Lucidasans, &apos;Lucida Sans&apos;, &apos;Arial Unicode MS&apos;"/>
<style:font-decl style:name="Bitstream Vera Sans"
fo:font-family="&apos;Bitstream Vera Sans&apos;"
style:font-pitch="variable"/>
<style:font-decl style:name="Tahoma" fo:font-family="Tahoma,
Lucidasans, &apos;Lucida Sans&apos;, &apos;Arial Unicode MS&apos;"
style:font-pitch="variable"/>
<style:font-decl style:name="Nimbus Roman No9 L"
fo:font-family="&apos;Nimbus Roman No9 L&apos;"
style:font-family-generic="roman" style:font-pitch="variable"/>
</office:font-decls>
<office:automatic-styles/>
<office:body>
<text:sequence-decls>
<text:sequence-decl text:display-outline-level="0"
text:name="Illustration"/>
<text:sequence-decl text:display-outline-level="0" text:name="Table"/>
<text:sequence-decl text:display-outline-level="0" text:name="Text"/>
<text:sequence-decl text:display-outline-level="0" text:name="Drawing"/>
</text:sequence-decls>
<text:p text:style-name="Standard">Fichier de test openoffice</text:p>
</office:body>
</office:document-content>

En espérant faire avancer le shimiliblique... ;)

--
Cordialement
--------------------------------------------
Jacques-Daniel PILLON
--------------------------------------------


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
David Dumortier
Bonjour,

J'archive ton mail pour le futur :-)

François Boisson wrote:
[...]

Je m'attelle à appliquer la même méthode pour les documents openoffice
mais là, si j'arrive à retrouver une 30 de fichiers openoffice (en me
fondant sur les «magicnumbers»), il est impossible de filtrer ces
fichiers par un grep où même de les ouvrir, apparemment openoffice ne
supporte pas un fichier rallongé par des octets quelconques. Quelqu'un
aurait une idée sur une méthode pour restaurer des fichiers openoffice?




Il semble que le dernier fichier soit META-INF/manifest.xml
immédiatement suivi de PK et un CRC ou le contenu compressé, m'enfin
c'est variable comme donné, par contre la longueur semble la même (10
octets testé sur des fichiers de quelques caractères (1) à plusieurs
100Ko (un peu plus de 1)).
Résumons META-INF/manifest.xmlPK+10octets
Un sed 's/(.*META-INF/manifest.xmlPK.{10}).*/1/' semble fonctionné
(si tu n'a pas 2 fichiers OOo dans ton bidule).

Bon courage.
--
David


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
François Boisson
Hmm, les fichiers que j'ai sont effectivement des débuts d'archives.

J'ai effectivement construits ces fichiers en cherchant un entête de la
forme "50 4B 03 04 14 00 00 00".

Cependant un appel à gunzip donne

gunzip: Offi.gz has more than one entry -- unchanged

(évidemment, je sais bien qu'il y a plusieurs fichiers...)


unzip gueule en disant que l'archive n'est pas bonne.

je n'arrive pas à trouver un désarchiveur tolérant!!

Une étude avec hexedit à la suite des indications que vous
(Jacques-Daniel et David) m'avez données sur les fichiers openoffice
obtenus montre que cet entête existe plein de fois. De là à imaginer que
le fichier est une bête concaténation de fichier .gz, il y a un pas que
je franchis allègrement (je ne suis pas à ça près). Bon, je vais écrire
un programme qui va découper le fichieren autant de fichier commençant
par cet entête, à suivre...


François Boisson


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
François Boisson
>
Une étude avec hexedit à la suite des indications que vous
(Jacques-Daniel et David) m'avez données sur les fichiers openoffice
obtenus montre que cet entête existe plein de fois. De là à imaginer
que le fichier est une bête concaténation de fichier .gz, il y a un
pas que je franchis allègrement (je ne suis pas à ça près). Bon, je
vais écrire un programme qui va découper le fichieren autant de
fichier commençant par cet entête, à suivre...





Eh, eh... Mon petit programme marche au poil, effectivement, j'obtiens
des tas de fichiers dézippés.

Avec les renseignements de Jean Daniel, je vais pouvoir faire un grep
sur le type (premier fichier) et le contenu (deuxième fichier). Je
considère mon fichier comme retrouvé (joie, bonheur!)


En espérant à tous que cette journée soit aussi bonne que pour moi!

PS: Lorsque j'aurais du temps, je peaufinerais mes petits utilitaires
fait sur le moment, ils sont très pratiques et facilement adaptables et
finalement plus rapides que recover. Seul souci, c'est fondé sur la
nonfragmentation des fichiers... :(. Ca doit s'adapter pour des fichiers
textes mais pour les gros fichiers d'archives, c'est rappé. Par contre
avantage +++, ça doit marcher sur ext3 et autres...


François Boisson


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Aux Saveurs Gourmandes
François Boisson a écrit :

PS: Lorsque j'aurais du temps, je peaufinerais mes petits utilitaires





a ta place d'es que j'ai le temps je met en place une procedure de
backup serieurse !!!
Guy


--
Pensez à lire la FAQ de la liste avant de poser une question :
http://wiki.debian.net/?DebianFrench

Pensez à rajouter le mot ``spam'' dans vos champs "From" et "Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact