Backup system android with adb

Содержание
  1. Резервное копирование ADB Backup и ADB Restore
  2. Как сделать бэкап через adb?
  3. ADB Backup
  4. ADB Restore
  5. Как сделать nandroid backup устройства непосредственно на компьютер, минуя sdcard
  6. Общая информация
  7. Требования
  8. Разделы в устройстве
  9. Резервное копирование всей памяти (посредством adb)
  10. Резервное копирование всей памяти (через WiFi)
  11. Резервное копирование всей памяти (через USB-модем или Wi-Fi-модем)
  12. Резервное копирование одного Раздела (raw = точная побитовая копия раздела)
  13. Резервное копирование одного Раздела (tar = копируются только файлы и папки)
  14. AnatomicJC / android-backup-apk-and-datas.md
  15. This comment has been minimized.
  16. natevw commented Mar 13, 2021
  17. This comment has been minimized.
  18. davtur19 commented May 17, 2021
  19. This comment has been minimized.
  20. jrd commented Jun 22, 2021
  21. This comment has been minimized.
  22. thebigsmileXD commented Aug 14, 2021
  23. This comment has been minimized.
  24. ToniCipriani commented Sep 21, 2021
  25. This comment has been minimized.
  26. GuruGoat commented Sep 25, 2021
  27. This comment has been minimized.
  28. berkes commented Nov 10, 2021
  29. This comment has been minimized.
  30. osamh757955 commented Nov 12, 2021
  31. This comment has been minimized.
  32. forianzsiga commented Nov 15, 2021 •
  33. This comment has been minimized.
  34. osamh757955 commented Nov 15, 2021
  35. This comment has been minimized.
  36. thebigsmileXD commented Nov 15, 2021
  37. This comment has been minimized.
  38. osamh757955 commented Nov 15, 2021

Резервное копирование ADB Backup и ADB Restore

Искали подробную статью, о том как сделать резервное копирование Android с помощью ADB? Рассказываем вам как пользоваться командами adb backup и adb restore! Переходите на сайт Android +1!

С каждым годом в Android улучшается система резервного копирования и восстановления! Однако пока нет ничего более безопасного и удобного варианта, чем adb backup и adb restore. Но есть проблема, работать придется в командной строке, и для многих это невероятно сложно. То возникает «ошибка adb не является внутренней или внешней командой«, то еще что-то. Поэтому было решено написать данный материал, чтобы вы могли во всем разобраться!

Как сделать бэкап через adb?

Для того, чтобы сделать backup android через компьютер, вам необходимо выполнить небольшую подготовительную работу:

  1. Скачиваем ADB и устанавливаем, советуем использовать версию Android + с инсталлятором, чтобы избежать многих ошибок

  1. На телефоне включаем «Отладка по USB«
  2. Подключите Android к компьютеру, запустите ADB и введите команду adb devices, после чего разблокируйте телефон и пройдите авторизацию ПК

Теперь можно выполнять резервное копирование!

ADB Backup

  • Создать резервную копию Android (только данные, без APK приложений):

adb backup -all -f data.ab

Во время создания резервной копии, подтвердите действие на Android

  • Создать резервную копию Android (данные и APK приложения):

adb backup -apk -all -f adb.ab

  • Для того, чтобы добавить карту памяти, используйте аргумент -shared (карта памяти, данные и APK приложения):

adb backup -apk -all -shared -f adb.ab

  • Чтобы исключить системное ПО, используйте аргумент -nosystem (карта памяти, данные и APK приложения, без системных):

adb backup -apk -shared -nosystem -f adb.ab

  • Включить кеш в бекап, добавьте аргумент -obb (карта памяти, кеш, данные и APK приложения, без системных)

adb backup -apk -shared -nosystem -obb -f adb.ab

Рекомендую выполнять бэкап Android на компьютер с помощью команды adb backup -apk -shared -nosystem -f adb.ab , так как карту памяти можно скопировать всегда отдельно!

ADB Restore

В отличие от команды adb backup, команда adb restore не имеет каких либо дополнительных аргументов, тут все просто:

adb restore adb.ab

У вас еще остались вопросы? Пишите их в комментариях, рассказывайте, что у вас получилось или наоборот!

Вот и все! Больше полезных статей и инструкций читайте в разделе Статьи и Хаки Android. Оставайтесь вместе с сайтом Android +1, дальше будет еще интересней!

Источник

Как сделать nandroid backup устройства непосредственно на компьютер, минуя sdcard

Так случилось, что мне понадобилось создать полную копию Android устройства, в котором полностью отсутствовали обычно используемые для этого средства. Поиски меня привели на форум XDA, где и была найдена данная всеобъемлющая инструкция, которая пришлась как нельзя кстати и которой я решил поделиться с вами.
В статье имеются мои комментарии, так как применял эту инструкцию для создания backup’a планшета Teclast x98 3g.

Общая информация

Это руководство предназначено для помощи в создании полной резервной копии вашего устройства (вся память со всеми разделами) или одного раздела (в том числе sdcards и т.д.) непосредственно на компьютер:

  • На уровне Блоков памяти (с помощью команды dd): для отдельных разделов или полностью всей памяти (все разделы). Резервная копия всегда будет иметь тот же размер, который имеет сохраняемый раздел.
  • На уровне Файлов (с помощью команды tar): только для отдельных разделов. Копия будет содержать только файлы и папки, которые имеются на устройстве, таким образом занимая гораздо меньше места, в зависимости от того, на сколько заполненным будет раздел.
Читайте также:  Как разблокировать андроид самсунг если забыл пин код

Данная инструкция применима, когда аппарат включен или находится в ClockworkMod Recovery (в данных случаях ADB будет работать, в режиме Fastboot данная инструкция не применима). Если дополнительно не будет никаких ремарок, все команды предназначены для использования в Windows. То же касается и Linux с Unix.

Требования

  • Рутированное Android устройство;
  • Установленный Busybox на устройстве;
  • Если вы используете Linux / OS X, у вас уже имеются необходимые инструменты, для Windows скачайте Cygwin и установите вместе с ним netcat, pv и util-linux, выбрав их во время установки (от себя добавлю, что лучше пользоваться терминалом из Cygwin mintty.exe, чем родным для Windows cmd.exe, так как скорость копирования у первого доходила до 3-4 МБ\с, а у cmd.exe — максимум 400 кб\с);
  • Установленный ADB;
  • Убедитесь, что adb.exe находится в переменной PATH. Посмотрите здесь и здесь, или воспользуйтесь Path Manager;
  • Включенный режим отладки по USB на устройстве и соответствующие драйверы, установленные в Windows. Ввод «adb devices» в терминале должен показать ваше устройство.

Разделы в устройстве

Теперь вам необходимо определить разделы и блоки на вашем устройстве, копию которых вы хотите сделать. Для копирования одного раздела можно использовать команды tar или dd, в то время как для копирования всей памяти нужно использовать только dd.

На Teclast x98 3g для определения разделов используются две команды: cat proc/partitions и mount.

127|root@android:/ # mount
mount
rootfs / rootfs ro,relatime 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/secure tmpfs rw,relatime,mode=700 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
[b]/dev/block/mmcblk0p9 /system ext4 ro,noatime,data=ordered 0 0
/dev/block/mmcblk0p7 /cache ext4 rw,nosuid,nodev,noatime,data=ordered 0 0
/dev/block/mmcblk0p6 /config ext4 rw,nosuid,nodev,noatime,data=ordered 0 0
/dev/block/mmcblk0p10 /data ext4 rw,nosuid,nodev,noatime,noauto_da_alloc,data=ordered 0 0
/dev/block/mmcblk0p8 /logs ext4 rw,nosuid,nodev,relatime,data=ordered 0 0[/b]
none /sys/kernel/debug debugfs rw,relatime 0 0
/dev/fuse /mnt/shell/emulated fuse rw,nosuid,nodev,relatime,user_id=1023,group_id=1023,default_permissions,allow_other 0 0
none /proc/sys/fs/binfmt_misc binfmt_misc rw,relatime 0 0
tmpfs /mnt/libreg tmpfs rw,noexec,noatime,size=4k,mode=700,gid=1003 0 0
/dev/block/vold/179:1 /storage/sdcard_ext fuseblk rw,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
root@android:/ # cat proc/partitions
cat proc/partitions
major minor #blocks name

179 10 30535680 mmcblk0
179 11 229376 mmcblk0p1
179 12 32768 mmcblk0p2
179 13 32768 mmcblk0p3
179 14 131072 mmcblk0p4
179 15 131072 mmcblk0p5
179 16 131072 mmcblk0p6
179 17 786432 mmcblk0p7
179 18 262144 mmcblk0p8
179 19 1048576 mmcblk0p9
259 0 27742188 mmcblk0p10
179 30 2048 mmcblk0boot1
179 20 2048 mmcblk0boot0
179 0 30657536 mmcblk1
179 1 30657504 mmcblk1p1

Обычно на Android весь блок, содержащий все разделы, расположен в /dev/block/mmcblk0, а все остальные разделы являются его подразделами. Вы можете установить parted with GPT support, чтобы просмотреть информацию о всех разделах.

Вся память телефона -> /dev/block/mmcblk0 (хотя, на некоторых телефонах, это может быть и sdcard).
Разделы -> все зависит от конкретного устройства. Обычно в /dev/block/platform/dw_mmc/by-name/ перечислены все разделы для данного устройства.

Резервное копирование всей памяти (посредством adb)

Подключите телефон с включенным режимом отладки по USB к компьютеру.

Что касается Teclast x98 3g и того случая, когда аппарат не загружается (bootloop). Очень важно, чтобы до всего этого случившегося был включен режим отладки по USB. Выключите полностью планшет, отсоедините все кабели, дайте пару секунд на «отдых» и подключите кабель от компьютера к планшету, должна появиться такая большая белая батарея, которая будет показывать, что идет процесс зарядки, вот только тогда, даже в выключенном состоянии можно будет работать с аппаратом через терминал и adb.

Запустите Cygwin Терминал и введите (при необходимости замените mmcblk0):

adb forward tcp:5555 tcp:5555
adb shell
su
/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox dd if=/dev/block/mmcblk0

Вы увидите мигающий курсор на следующей строке слева. На данный момент аппарат ожидает передачи Блока по сети.

Откройте другой Cygwin Терминал и введите:

adb forward tcp:5555 tcp:5555
cd /path/to/store/the/backup
nc 127.0.0.1 5555 | pv -i 0.5 > mmcblk0.raw

Вы увидите, как начнет увеличиваться размер файла до тех пор, пока полностью не скопируется весь выбранный вами Блок. Теперь у вас имеется полный бекап аппарата в raw формате. Вы можете увидеть всё содержимое в скопированном Блоке с помощью gptfdisk, доступного для Windows, Linux и других ОС (официальный сайт или SourceForge). Аналогичное вы сможете сделать при помощи ClockworkMod Recovery, но первоначально необходимо смонтировать Раздел /system, так как в BusyBox, входящем в ClockworkMod, отсутствует netcat, потому вам необходимо использовать netcat из /system раздела Вашего устройства.

Читайте также:  Андроид нет сети что делать самсунг

При помощи определенных инструментов в Linux вы можете изменять и извлекать необходимые Разделы из всего Блока.

Вы можете использовать ADB через WiFi, аналогично как и Wi-Fi ADB.

Резервное копирование всей памяти (через WiFi)

Необходимо:

  • Установленный FTP сервер на компьютере или другом устройстве;
  • Пользователь с паролем;
  • Установленный порт для FTP сервера, по умолчанию 21, но в данном примере используется 40;
  • Домашняя директория пользователя с правами записи.

Правилом хорошего тона будет копирование myfifo в /cache, а не в /data, так как можно случайно затереть важные данные в случае использования raw данных для восстановления.

Запустите Cygwin Терминал и введите:

adb shell
su
mkfifo /cache/myfifo
ftpput -v -u user -p pass -P 40 COMPUTER_IP block.raw /cache/myfifo

Откройте другой Cygwin Терминал и введите:

adb shell
su
dd if=/dev/block/mmcblk0p12 of=/cache/myfifo

Некоторые замечания:

  • FIFOs можно сделать только на Linux Native файловых системах, FAT для этого не подойдет;
  • Процесс чтения Раздела с устройства никоим образом его не видоизменяет.

Резервное копирование всей памяти (через USB-модем или Wi-Fi-модем)

Для этого необходимо отключить все сетевые соединения на компьютере, кроме того, с помощью которого вы будете осуществлять процесс копирования.
Как только соедините компьютер с Android устройством, вы сможете просмотреть IP компьютера и IP устройства в «Свойствах соединения». IP — будет являться IP самого компьютера, а Gateway будет содержать IP Android устройства.

  • Wi-Fi модем: Компьютер Android устройство Интернет
  • USB модем:
    Компьютер Android устройство Интернет
    Компьютерные Android устройство Интернет

Процесс абсолютно аналогичный передачи данных через Wi-Fi, единственное, скорость передачи данных будет значительно выше, потому что компьютер и Android устройство соединены непосредственно, вместо того, чтобы использовать роутер в качестве шлюза. В данном случае шлюзом будет само Android устройство. USB-модем имеет самый высокий уровень передачи данных.

Резервное копирование одного Раздела (raw = точная побитовая копия раздела)

Все аналогично тому, что было описано выше, только необходимо заменить mmcblk0 на соответствующий Раздел. Вы можете использовать в данном конкретном случае ПО для просмотра содержимого скопированного Раздела. В зависимости от файловой системы: DiskInternals Linux Reader, Ext2Read, Ext2 File System Driver for Windows, Ext4Explore, плагин для Total Commander и ImDisk Virtual Disk Driver. Можно также использовать ПО для восстановления данных с отдельных разделов, например, Recuva совместно с VHD Tool или инструменты командной строки, включенные в сами операционные системы.

Резервное копирование одного Раздела (tar = копируются только файлы и папки)

Теперь вы должны знать, где и какой раздел монтируется, например, Firmware смонтирована в /system, которая по сути является ROM.
В данном случае вам придется открыть три Cygwin Терминала, вследствие ограничений, накладываемых самим Android:

Откройте первый Cygwin Терминал и создайте FIFO, например, в /cach, и перенаправте tar в него:

adb forward tcp:5555 tcp:5555
adb shell
su
/system/xbin/busybox mkfifo /cache/myfifo
/system/xbin/busybox tar -cvf /cache/myfifo /system

Вы должны это сделать потому, что перенаправление tar в stdout (c «-«) не работает на Android и портит сохраняемый файл.

Откройте второй Cygwin Терминал:

adb forward tcp:5555 tcp:5555
adb shell
su
/system/xbin/busybox nc -l -p 5555 -e /system/xbin/busybox cat /cache/myfifo

Откройте третий Cygwin Терминал:

adb forward tcp:5555 tcp:5555
cd /path/to/store/the/backup
nc 127.0.0.1 5555 | pv -i 0.5 > system.tar

Полученный tar файл вы можете просмотреть с помощью Winrar, Total Commander, PeaZip и т.д. Обратите внимание, вы не должны извлекать файлы или редактировать их, так как tar формат сохраняет данные доступа и владельца для каждого файла, которые исчезают при извлечении в FAT / NTFS разделы.

Источник

AnatomicJC / android-backup-apk-and-datas.md

Backup android app, data included, no root needed, with adb

adb is the Android CLI tool with which you can interact with your android device, from your PC

You must enable developer mode (tap 7 times on the build version in parameters) and install adb on your PC.

Fetch application APK

To get the list of your installed applications:

If you want to fetch all apk of your installed apps:

To fetch only one application, based of listed packages results:

Backup applications datas

To backup one application, with its apk:

To backup all datas at once:

To backup all datas in separated files:

First, you have to install the saved apk with adb:

Then restore the datas:

Extract content of adb backup file

You will need the zlib-flate binary. You will able to use it by installing the qpdf package.

Читайте также:  Intent android передать значение

Then, to extract your application backup:

Miscellaneous: remove non-wanted applications

Sometimes, you have already installed (but non wanted) apps when you buy an Android Smartphone. And you can’t uninstall these apps. So Bad. And some pre-installed app are not present on PlayStore. WTF.

You can remove them with this command, and root is not needed:

You can first disable them, then when you are sure, you can remove them.

To list disabled apps:

This comment has been minimized.

Copy link Quote reply

natevw commented Mar 13, 2021

For other platforms there’s some zlib alternatives in the thread here. E.g.:

This comment has been minimized.

Copy link Quote reply

davtur19 commented May 17, 2021

For those using adb on Windows with bash

This comment has been minimized.

Copy link Quote reply

jrd commented Jun 22, 2021

pm list packages could be replaced by cmd package list packages as the pm list is a deprecated alias and can go away at any version.

This comment has been minimized.

Copy link Quote reply

thebigsmileXD commented Aug 14, 2021

To back up your SD card or any other folder to a tar file, you can do
adb exec-out «cd /storage/sdcard0 && tar c * -» > sdcard.tar
where adb pull might fail due to the target file system not supporting case-sensitive file names etc.

This comment has been minimized.

Copy link Quote reply

ToniCipriani commented Sep 21, 2021

Powershell for individual package backup:

Mind you for encrypted devices (which is almost every one out there these days) you will be prompted for a password ever single time.

This comment has been minimized.

Copy link Quote reply

GuruGoat commented Sep 25, 2021

Powershell to get all .apk.
Inspired by @ToniCipriani’s script above!

This comment has been minimized.

Copy link Quote reply

berkes commented Nov 10, 2021

If the backup file is empty, and/or the backup command exits immediately, that may be caused by running this as non-root.

First, enable «root access» for «ADB» on your devise at Settings -> System -> Developer options.

Then restart the server as root: adb root . Now the backup commands can access the data and can actually back them up.

This comment has been minimized.

Copy link Quote reply

osamh757955 commented Nov 12, 2021

Can I transfer WhatsApp Business through adb without root
Unfortunately, I haven’t been able to do it yet

This comment has been minimized.

Copy link Quote reply

forianzsiga commented Nov 15, 2021 •

actually, for newer devices (for me Android 12, unencrypted device, and without enabling password for the backup) the backup creation give me an empty file. When I changed the extension from .adb to .ab, the backup went seamlessly. It might be something version dependent, but it may be just a typo by the publisher.

This comment has been minimized.

Copy link Quote reply

osamh757955 commented Nov 15, 2021

actually, for newer devices (for me Android 12, unencrypted device, and without enabling password for the backup) the backup creation give me an empty file. When I changed the extension from .adb to .ab, the backup went seamlessly. It might be something version dependent, but it may be just a typo by the publisher.

There are no spelling errors in the text because I can transfer the official WhatsApp by adb, but I need to download the version to an old version, but WhatsApp Business cannot make a backup Is there a version of WhatsApp Business that allows me to backup

This comment has been minimized.

Copy link Quote reply

thebigsmileXD commented Nov 15, 2021

I’d prefer if this gist would stay a collection of helpful commands, and not a support forum, kthxbai

This comment has been minimized.

Copy link Quote reply

osamh757955 commented Nov 15, 2021

I’d prefer if this gist would stay a collection of helpful commands, and not a support forum, kthxbai

I want to ask more

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

Источник

Оцените статью