Можно ли использовать adb для восстановления SMS-сообщений в постоянном «Безопасном режиме»?

У меня есть Droid X2 без рута, который находится в постоянном «Безопасном режиме», но я хочу восстановить SMS-сообщения. Резервное копирование и восстановление SMS НЕ будут работать, потому что безопасный режим позволяет запускать только системные приложения.

adb shellвлезет в телефон, но не дает попасть в базу смс:

[рабочее пространство rjt@pc232]$ оболочка adb
$ кошка /proc/версия
Версия Linux 2.6.32.9-00008-gc406305 (hudsoncm@il93lnxdroid80) (версия gcc 4.4.0 (GCC)) #2 SMP PREEMPT Вт, 24 января, 22:54:19 CST 2012

$ cd /data/data/com.android.providers.telephony/databases/
$ pwd
/data/data/com.android.providers.telephony/базы данных
$ лс
opendir не удалось, разрешение отклонено
$ су -л корень
вс: разрешение отклонено
$ судо
sudo: разрешение отклонено
$ судо су -
sudo: разрешение отклонено
$ sudo su -l корень
sudo: разрешение отклонено
$

Поскольку резервному копированию и восстановлению SMS разрешен доступ к моим SMS-сообщениям в обычном режиме, блокирует ли «Безопасный режим» мой доступ или тот факт, что этот телефон не рутирован?

Могу ли я рутировать телефон без потери существующих SMS-сообщений?

Ответы (3)

Вы не сможете сделать это без рутированного устройства, так как /dataкаталог может быть прочитан только системой Android, а приложения также могут читать только/data/data/<package name> свой собственный каталог .

Устройства Android не поставляются с sudo, и вам нужно быть рутированным, чтобы использовать su, поскольку он переключается на корневую оболочку (на нерутированных ПЗУ su не может переключиться на пользователя root, поскольку ядро ​​​​это запрещает).

Если вы найдете способ рутировать устройство (что может быть сложно), вы можете смонтировать /dataраздел как RW, а затем скопировать с него файлы.

Используйте эту команду, чтобы перемонтировать /dataпаттерн:

su

mount -o remount,rw /data

Команду suможно выполнить только на корневом устройстве.

РЕДАКТИРОВАТЬ:

Просто для пояснения: приложение SMS Backup & Restore использует вызов API для получения SMS-сообщений через приложение обмена сообщениями, поэтому необходимо READ_SMSразрешение.

РЕДАКТИРОВАТЬ2:

Большинство методов рутирования не стирают данные устройства, однако некоторые это делают. Однако вам нужно будет поискать в Google способ рутирования вашего дроида 2 и посмотреть, стирает ли он данные.

Должен ли я в «Безопасном режиме» устанавливать и запускать такие приложения, как «Резервное копирование и восстановление SMS», через adb? Если да, то как?
@rjt Скорее всего, вы можете их установить, но, насколько я знаю, вы не сможете их запустить . Хотя ты можешь попробовать. Загрузите файл приложения .apk и используйте adb install <path/to/apk/file>его для установки.
Спасибо, Лиам, за то, что вы подчеркнули, что сначала нужно рутировать телефон.

Попробуй это:

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

Который копирует базу данных SMS на SDCard.

Для базы данных телефонов

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

Это очень старый трюк, извлекать базы данных без рута. Не гарантируется работа на всех ПЗУ в зависимости от того, как установлены права доступа к каталогу.

$ cat /data/data/com.android.providers.telephony/databases/mmssms.db /data/data/com.android.providers.telephony/databases/mmssms.db: Permission denied
вы пропустили символ перенаправления? как в>
Да, я пропустил перенаправление, потому что в настоящее время у меня нет внешней SD-карты. Попробую еще раз после вставки карты. упс У меня нет с собой SD-карты, действительно ли это имеет значение?
попробовать adb pull /data/...напрямую? Вы должны были прямо указать в своем вопросе, что у вас нет внешней SD-карты !
[rjt@pc232 workspace]$ adb pull /data/data/com.android.providers.telephony/databases/mmssms.db failed to copy '/data/data/com.android.providers.telephony/databases/mmssms.db' to './mmssms.db': Permission denied
Это не сработает , так как устройство не рутировано! Раздел /data даже не читается без рута! Вы должны быть рутированы, используйте команду su для входа в корневую оболочку, затем перемонтируйте раздел /data как RW.
Liam W, в моем первоначальном вопросе были продемонстрированы попытки sudo и su, но разрешение было отклонено. Я делаю что-то неправильно в отношении su / sudo?
@rjt Смотрите мой ответ. Android не поставляется с sudo, и root можно получить только на рутированном устройстве.
Итак, есть ли способ рутировать телефон, не удаляя существующие SMS-сообщения?
@rjt Смотрите последнее редактирование моего ответа.
@LiamW Я прямо заявил, что не гарантируется работа на ВСЕХ ПЗУ ... некоторые работают, не рутированные Froyo на Samsung Europa, это работает. Не все!
@ t0mm13b, спасибо за помощь. Я пробовал с внешней SD-картой, но все равно получаю «Отказано в доступе».
@ t0mm13b, мне удалось рутировать телефон и сделать резервную копию, как вы описали. Спасибо.

Я еще не уверен, работает ли это на телефонах, отличных от Google, но на моих Pixel 2 и Nexus 5 функция резервного копирования (в разделе «Настройки» -> «Система» -> «Резервное копирование» -> (выберите профиль, если необходимо) -> «Резервное копирование Pixel 2»). ) показывает, что текстовые SMS-сообщения включены в резервную копию Google Диска, если вы включили ее. Вы не можете напрямую загрузить или просмотреть резервную копию с Google Диска/ПК, но если у вас есть другой телефон и вы решили восстановить на него данные, SMS-сообщения должны быть загружены на новый телефон и доступны для просмотра и экспорта с помощью стороннего приложения. .