Il s'est avéré qu'Amanda a eu un moment de blondeur et a supprimé par erreur tous ses messages dans l'application SMS. Ouais, "Supprimer tous les fils" ne devrait probablement pas être aussi facile à invoquer.
Le téléphone est un ZTE Blade, dont toutes les données utilisateur sont stockées sur un système de fichiers YAFFS2.
J'ai une ancienne sauvegarde, mais les SMS que je dois récupérer datent d'après cette date. Il y en a probablement sur la carte SIM, j'ai donc commandé un lecteur SIM. Je soupçonne que la vingtaine de SMS qu'il contient sont pour la plupart des spams de l'opérateur réseau, de toute façon.
Je maudis donc mon plan de sauvegarde inefficace et je fais le serment de sauvegarder les SMS vers GMail à l'avenir.
Pendant ce temps, je me résous à récupérer mmssms.db, ou ce qu'il en reste.
Tout d'abord, je connecte adb et vérifie les montages, puis j'essaie de copier le bloc vers une image sur la carte SD :
dd if=/dev/block/mtdblock6 of=/sdcard/data.img
Pas de chance. Je pense que le démontage forcé serait une mauvaise idée, et ne fonctionnera probablement pas dans tous les cas.
Donc, je télécharge une copie liée statiquement de busybox sur la carte SD et j'utilise l'option conv=noerror.
Je me suis retrouvé avec un fichier dont la taille augmentait jusqu'à ce que la carte SD soit pleine.
Qu'est-ce que je fais de mal ? ClockworkMod prend-il une image au sens propre du terme ou se contente-t-il de sauvegarder les fichiers et de les emballer dans une image ? Existe-t-il un programme de récupération YAFFS2 ? (Les deux articles que j'ai lus le font paraître faisable mais je n'ai même pas vu de code PoC).
Tout indice est le bienvenu/
Edit : Le téléphone est rooté. Très rooté :)
Autre édition :
La plupart des messages trouvés dans mmssms.db-wal :
ls -al /data/data/com.android.providers.telephony/databases
drwxrwx--x 1 radio radio 2048 Jul 17 20:16 .
drwxr-xr-x 1 radio radio 2048 Oct 26 2011 ..
-rw-rw---- 1 root root 60416 Jul 17 20:16 mmssms.db
-rw-rw---- 1 radio radio 32768 Jul 17 16:18 mmssms.db-shm
-rw-rw---- 1 radio radio 628832 Jun 30 19:23 mmssms.db-wal
-rw-rw-rw- 1 root root 60416 Jul 17 20:16 mmssms.db.xxx
-rw-rw---- 1 radio radio 132096 Jun 18 13:25 telephony.db
-rw-rw---- 1 radio radio 32768 Jul 16 22:14 telephony.db-shm
-rw-rw---- 1 radio radio 106928 Jul 16 22:14 telephony.db-wal
Avec un peu de chance, SMS Backup & Restore permettra une fusion.