I was using Nexus S i9020T, CM7 nightly (a few weeks old) and for some reason I wake up this morning and couldn't get past the CM7 "blue circle" screen booting. I had about a month old backup but I didn't want to lose any recent data so I made a Nandroid backup.
Normally, to restore SMS or MMS from an old backup, one can just restore the nandroid backup, use a third party SMS backup program to backup the data to sdcard or gmail, restore or install new rom, then restore the SMS from the third party backup software.
However, in my case, I had a nandroid with data on it that I wanted to keep but that wouldn't boot.
So I did some searching and others have had this problem before but I figured I'd put it here for others that may have the same problem. I am not taking credit for this I just found various pieces of info around the web.
The solution is to use a utility called unyaffs. Unyaffs will need cygwin.dll. Yaffs is the file system that CWM recovery nandroid backups are stored in. Windows cannot read or mount this file system AFAIK.
Instead of compiling unyaffs for windows and installing all of cygwin, just use the attached pre-compiled unyaffs.exe and cygwin.dll.
Here's the process:
To restore SMS/MMS from a nandroid backup using MS Windows:
To restore contacts/call log from a nandroid backup:
To restore launcher configuration (only for stock Gingerbread launcher):
Note: Be aware that replacing the existing files with those extracted from the backup will remove the existing data so if you're not 100% sure what you're doing, change the names to mmssms_OLD.db or otherwise back them up before pasting the files from the backup.
Edit: Just thought I'd add, I also came across an app called AppExtractor but, despite the good reviews, the SMS/MMS restore didn't work for me.
Normally, to restore SMS or MMS from an old backup, one can just restore the nandroid backup, use a third party SMS backup program to backup the data to sdcard or gmail, restore or install new rom, then restore the SMS from the third party backup software.
However, in my case, I had a nandroid with data on it that I wanted to keep but that wouldn't boot.
So I did some searching and others have had this problem before but I figured I'd put it here for others that may have the same problem. I am not taking credit for this I just found various pieces of info around the web.
The solution is to use a utility called unyaffs. Unyaffs will need cygwin.dll. Yaffs is the file system that CWM recovery nandroid backups are stored in. Windows cannot read or mount this file system AFAIK.
Instead of compiling unyaffs for windows and installing all of cygwin, just use the attached pre-compiled unyaffs.exe and cygwin.dll.
Here's the process:
To restore SMS/MMS from a nandroid backup using MS Windows:
- place unyaffs.exe + cygwin.dll + data.img in a folder
- open command prompt in this directory (shift+right click -> open comand window here)
- type: unyaffs data.img
- the contents of the data.img will be extracted to this folder. wait for extraction to complete
- browse to \data\com.android.providers.telephony\databases in the extracted folders
- copy mmssms.db, mmssms.db-shm, mmssms.db-wal to sdcard
- use root explorer to copy these three files to \data\data\com.android.providers.telephony\databases
To restore contacts/call log from a nandroid backup:
- repeat above process for \data\com.android.providers.contacts\databases
To restore launcher configuration (only for stock Gingerbread launcher):
- repeat above process for \data\com.android.launcher\databases
Note: Be aware that replacing the existing files with those extracted from the backup will remove the existing data so if you're not 100% sure what you're doing, change the names to mmssms_OLD.db or otherwise back them up before pasting the files from the backup.
Edit: Just thought I'd add, I also came across an app called AppExtractor but, despite the good reviews, the SMS/MMS restore didn't work for me.
Attachments
Last edited: