Figyelem! A cikkben leírtak végrehajtásának egy részéhez alapfokú SQL ismeretekre van szükség!
Számtalanszor elmondtam már Én is, és nálam sokkal nagyobb szakértők is, hogy nagyon fontos nandroid mentést csinálni, mielőtt lecserélnénk a meglévő, már működő ROM-unkat. A nandroid mentés minden egyes partíció tartalmát lementi 1-1 .img kiterjesztésű fileba. Ezek a képfájlok mkyaffs2image formátumúak, így nem lehet őket egyszerűen megnyitni valamilyen képkezelő alkalmazással (pl. Daemon Toolssal) és kinyerni a tartalmukat.
Nekem jelenleg 12 nandroid mentés van felmásolva számítógépemre, köztük van az eredeti gyári ROM, néhány FLB-s mentés, sok Cyanogenes és egy pár olyan is, ami már használhatatlan (nem bootol be vele a készülék). Az ok, amiért ennek az egész eljárásnak utánanéztem, nagyon egyszerű: megváltozott egy ismerősöm telefonszáma, melyet az utolsó, még működőképes nandroid mentés nem tartalmazott, ami tartalmazta volna, az pedig használhatatlan volt (mint említettem, nem bootolt vele a készülék). Gondoltam utánanézek, mit is ment le a nandroid mentés, illetve milyen formában tárolja az adatokat.
Az első eszköz, amire szükségünk lesz az unyaffs, látogassuk meg a következő oldalt és töltsük le az unyaffs.h és unyaffs.c C forrásfájlokat. Amennyiben nem programoztunk még C nyelven, valószínűleg nincs fenn a gépünkön a gcc fordító, így tegyük most fel azt! Adjuk ki a következő parancsot egy konzolba (ha szükséges, használjuk a su vagy sudo parancsok valamelyikét):
apt-get install gcc
Ha ezt megtettük és végrehajtódott, másoljuk az unyaffs forrásfájljait, a nandroid mentés .img filejait ugyanarra a helyre. Adjuk ki a következő parancsot:
gcc -o unyaffs unyaffs.c
Ezzel lefordítottuk és futtatható állományt készítettünk az unyaffs-ból, amelyet mostmár használatba vehetünk. Csomagoljuk most ki a data.img-t, amely a felhasználói adatokat tartalmazza, a következő parancs kiadásával:
./unyaffs data.img
Az .img file tartalma kicsomagolódik az aktuális könyvtárba. Sok-sok mappát kapunk, txt,xml,dex,db fájlokat. Az első kettővel nem lehet problémátok, sima szövegszerkesztő programmal megnyitható és olvasható. A dex fájlokról itt többet is megtudhattok. Ami minket még érdekelhet, azok a db fájlok, melyek sqlite adatbázisok. Töltsünk le egy programot, amellyel megnyithatjuk ezeket, legyen ez most a Sqliteman. Töltsük le, telepítsük, majd nyissuk meg a programot.
Figyelem! Az elérési útvonalak egyénenként eltérhetnek! Nyissuk meg az Sqliteman-ban a következő elérési útvonalon található adatbázist:
/data/data/com.android.providers.contacts/databases/contacts2.db
Majd írjuk be a következő SQL lekérdezést:
select name,number from view_v1_phones;
És Voilá!, a kontaktjaink névvel és telefonszámmal. Remélem sikerült új ismerettel szolgálnom a Számotokra, turkáljatok merészen, hiszen ezek az adatok már nincsenek a készüléken, illetve az img file is ki van tömörítve, így azon változtatást nem végzünk.