Tak się stało, że Amanda miała blond chwilę i przez pomyłkę usunęła wszystkie swoje wątki w aplikacji SMS. Tak, „Usuń wszystkie wątki” prawdopodobnie nie powinno być tak łatwe do wywołania.
Telefon jest ZTE Blade, a wszystkie dane użytkownika są niewygodnie przechowywane w systemie plików YAFFS2.
Mam starą kopię zapasową, ale od tego czasu muszę odzyskać SMS-y. Prawdopodobnie są jakieś na karcie SIM, więc zamówiłem czytnik SIM. Podejrzewam, że dwadzieścia mniej więcej to w większości spam spamowy operatora sieci.
Dlatego przeklinam mój nieskuteczny plan tworzenia kopii zapasowych i przysięgam, że w przyszłości wykonam kopię zapasową SMS-a na Gmailu.
Tymczasem postanawiam odzyskać mmssms.db lub to, co z niego zostało.
Najpierw podłączam adb i sprawdzam mocowania, a następnie próbuję skopiować blok do obrazu na karcie SD:
dd if=/dev/block/mtdblock6 of=/sdcard/data.img
Nie ma takiego szczęścia. Uważam, że wymuszanie zsiadania byłoby złym pomysłem i prawdopodobnie i tak nie zadziała.
Przesyłam więc statycznie połączoną kopię busybox na kartę SD i używam opcji conv = noerror.
Skończyło się to plikiem, który powiększał się aż do zapełnienia karty SD.
Co ja robię źle? Czy ClockworkMod bierze obraz w prawdziwym sensie, czy po prostu tworzy kopię zapasową plików i pakuje je w obraz? Czy istnieje program odzyskiwania YAFFS2? (Dwa artykuły, które przeczytałem, sprawiają, że wydaje się to wykonalne, ale nie widziałem nawet kodu PoC)
Wszelkie wskazówki otrzymane z wdzięcznością /
Edycja: telefon jest zrootowany. Bardzo zakorzeniony :)
Dalsza edycja:
Większość wiadomości znalezionych w 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
Przy odrobinie szczęścia SMS Backup & Restore pozwoli na scalenie.
źródło
Odpowiedzi:
Baza danych SMS jest przechowywana, w
/data/data/com.android.providers.telephony/databases/mmssms.db
której chcesz to zrobić.Najlepiej to zrobić, nie podłączaj jeszcze kabla USB:
mount /data
adb shell
cp /data/data/com.android.providers.telephony/databases/mmssms.db /sdcard/MySmsDatabase.db
adb shell
wpisując:exit
unmount /data
dla Ciebie.Na tym etapie twoja baza danych jest teraz kopiowana. I można go bezpiecznie wyodrębnić za pomocą czegoś takiego jak SqliteMan . HTH.
Edycja: OP był zainteresowany tym, jak zrobić zrzut. - Czytaj :)
Po wywołaniu tego (z podłączonym USB i wewnątrz
adb shell
)Wiedząc, która partycja jest kluczem .. Tak na przykład z mojego Blade, widzę, że userdata jest na partycji
mtd6
, w której rzeczywiste informacje o partycjach można znaleźć w/dev/mtd/mtdX
więc jego sprawa robi to za pomocącat
:A stamtąd, biorąc pod
/sdcard/myuserdata.dump
uwagę system plików używany na tej partycji, można go zamontować za pomocą pętli zwrotnej. Przebieg będzie się różnić i oczywiście jest to sytuacja z kurczakiem i jajami, aby to wszystko zrobić, telefon musi być zrootowany.źródło