Android - Can adb be used to recover SMS messages while in permanent "Safe Mode"?

Try this:

cat /data/data/com.android.providers.telephony/databases/mmssms.db > /sdcard/mysms.db

Which copies the SMS database across to the SDCard.

For the Telephone database,

cat /data/data/com.android.providers.telephony/databases/telephony.db > /sdcard/mytelephony.db

Its a very old trick, to pull in the databases without root. It is not guaranteed to work across all ROMs depending on how the directory permissions are set.


You will be unable to do this without a rooted device, as the /data directory can only be read by the Android system, and apps can also read their own /data/data/<package name> directory only.

Android devices do not come with sudo, and you need to be rooted to use su as it switches to the root shell (on unrooted ROM's, su can't switch to the root user, as the kernel denies it).

If you do find a way to root the device, (which may be difficult), you can mount the /data partition as RW, then you can copy files from it.

Use these command to remount the /data patition:

su

mount -o remount,rw /data

The su command can only be executed on a rooted device.

EDIT:

Just for clarification, the SMS Backup & Restore app uses an API call to get the SMS messages via the Messaging app, hence the need for the READ_SMS permission.

EDIT2:

Most rooting methods don't wipe the device data, however some do. You would have to google for a way to root your droid 2 however, and see if it wipes the data.