Я рутировал свое устройство HTC Evo Design 4G, и я пытаюсь добавить данные / данные, которые выдают: «0 файлов извлекают 0 файлов пропущены»
Мне удалось вытащить /System/build.prop. Как я могу вытащить корневую папку.
Спасибо, Иуа
Я рутировал свое устройство HTC Evo Design 4G, и я пытаюсь добавить данные / данные, которые выдают: «0 файлов извлекают 0 файлов пропущены»
Мне удалось вытащить /System/build.prop. Как я могу вытащить корневую папку.
Спасибо, Иуа
Ответы:
Приведенные ниже файлы и каталоги /data/data
защищены от «обычного пользователя», поэтому вы не можете просто «вытянуть» их, если демон ADB не работает в режиме root. За исключением файла, на который вы ссылались ( /system/buildprop
по крайней мере, читаемый всеми приложениями), указанные ниже папки /data/data
являются «невидимыми» (кроме корневых), поэтому они даже не могут быть прочитаны.
Чтобы иметь возможность использовать adb pull
их, вам нужно сначала запустить демон ADB в режиме root. В зависимости от устройства, простая adb root
команда может сделать это, но большинство устройств откажутся. В этих случаях вы можете использовать небезопасный adbd chainfire : установите это приложение на свое устройство, запустите его там и вручную переключитесь в «небезопасный» режим. Теперь это pull
должно быть успешным.
Примечание: это называется «небезопасно», потому что запуск adbd
с правами root дает всем, у кого есть компьютер и кабель USB, доступ ко всему на вашем устройстве. На всякий случай, если вам интересно.
Если ваш телефон рутирован, есть три способа обойти это. Первый - использовать ADBD небезопасно .
Другой - переместить его в другую папку с корнем, а затем вытащить его оттуда:
$ adb shell
shell@android:/ $ su
root@android:/ # mkdir /sdcard/data
root@android:/ # cp /data/data/* /sdcard/data
root@android:/ # exit
shell@android:/ $ exit
$ adb pull /sdcard/data .
$ adb shell
shell@android:/ $ rm -r /sdcard/data/
shell@android:/ $ exit
Я думаю, что вы можете создать скрипт, такой как:
echo 'echo "mkdir /sdcard/data; cp $1/* /sdcard/data; exit" | su; exit' | adb shell
adb pull /sdcard/data .
echo 'rm -r /sdcard/data; exit' | adb shell
и сохранить его где-нибудь.
Наконец, третий вариант chmod -R 1777 /data/data
, но это гораздо более небезопасно, поэтому крайне не рекомендуется.
$1/*
относится к? Это /data/data
каталог?
Вы не можете напрямую извлекать папку с данными, поскольку у adb нет доступа к списку файлов. Если вы хотите вытащить папку / data, вы можете сделать это с помощью восстановления ([Custom recovery, CWM / TWRP] запустите adb, пока устройство находится в режиме восстановления, возможно, пользовательское восстановление). Или как root, скопируйте / data в другой каталог (sdcard) и извлеките его оттуда.
Вот что сработало для меня: * Убедитесь, что вы используете последнюю версию ADB.
'infocus $ adb shell'
'shell @ m1: / $ su'
Тогда вы заметите, что «$» становится «#», вот так:
'root @ m1: / #'
-Хеш, чтобы вы знали, что вы находитесь в режиме SU.
'root @ m1: / # mkdir / sdcard / data /'
* отправляйтесь в корень файла, который вы хотите скопировать. Например, для меня я хотел сделать резервную копию / копию своих приложений и сохранить их на своем компьютере так:
'root @ m1: / data / app #'
'root @ m1: / data / app # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1
com.android. вендинг-2'
'root @ m1: / data / app # cp -R * / / sdcard / data /'
После того, как вы нажмете клавишу ввода, если файл достаточно большой, его копирование, очевидно, займет некоторое время, поэтому курсор будет немного мигать, он будет выглядеть так, будто ничего не делает, НО ЭТО ТАК! это копирование файлов, так что не паникуйте! и не останавливайте процесс !!! -Если вы хотите просто открыть еще один сеанс оболочки ADB и перейти в папку, куда вы переносите файлы, выполнить проверку «ls», и вы должны увидеть, что пустая папка теперь заполняется файлами. Как только передача будет завершена, вы вернете свою оболочку.
Перейдите к «sdcard / data» и убедитесь, что все скопировано «ls»:
'root @ m1: / sdcard / data # ls
com.abtnprojects.ambatana-1
com.acr.rootfilemanager-1
com.amazon.kindle-1
com.android.chrome-1
com.android.mms-1'
К этому моменту, если вы не создали папку на целевой машине, сделайте это. Я удобно создал папку под названием «приложения»
Теперь давайте сделаем неуловимую рекурсивную ADB PULL для всех файлов одновременно: -Убедитесь, что вы вышли из сеанса ADB, так как мы были в режиме SU, нам нужно выйти дважды:
'root @ m1: / sdcard / data # exit'
'shell @ m1: / $ exit'
'AtomicusZro $ adb pull -a / sdcard / data / apps /'
Вы должны увидеть что-то вроде этого:
[69%] /sdcard/data/com.google.android.gms-1/base.apk: 74%
Как только это будет сделано:
'/ sdcard / data /: 296 файлов извлечены. 5,1 МБ / с (1193942288 байт в 221,352 с) '
И вуаля!
Примечания:
Не знаю, имеет ли значение, но я использую Mac.
.Если во время сеанса ADB вы не можете получить также «привилегии su»:
1-й: вам, вероятно, нужно предоставить root-доступ ADB
2-й: «суперпользователь» установлен неправильно.
Дважды проверьте ваши команды
Удачи.-
работает на моем устройстве Android 7.1. шаги, чтобы заставить это работать:
Теперь вы можете подключить ADB к вашему компьютеру.
Надеюсь это поможет
Харис
adb root
первым?