Как сделать образ внутренней памяти андроид
Восстановление удаленных файлов с внутренней памяти на устройстве android
Сегодня столкнулся с задачкой восстановить данные с внутренней памяти на андроид смартфоне.
Итак использовал статью на хабре восстановление удаленных файлов android
Алгоритм грубо следующий
1) установить драйвера на свой телефон. У меня был телефон самсунг у него дрова ставяться при установки самсунговского софта kies. По сути нам надо чтобы при включении режима usb модем на андроиде у нас мтартовал модем на компьютере. Появился линк в сетевых адаптерах в свойствах системы.
2) Заходим в настройки телефона — О телефоне — и несколько раз нажимаем по ярлыку номер сборки после чего активируеться меню разработчика, в нем необходимо включить режим отладки по usb. Так же нам будет нужен root на телефоне. Если его нет то надо получить. У меня root уже был на телефоне поэтому в меню разработчика я только включил доступ к root через adb. Доступ к рут через адб не появился почему то на стоковой прошивке, на циагнмоде эта вкладка находится в меню разработчика. В стоковой прошивке через дополнительный софт для управления рут правами можно это дело включить. Главное при подключении через adb shell к устройству после команды su чтобы появилось приветствие root
3)Установил драйвер adb adbdriver.com/downloads/ либо скачать либо установить adb драйвер для конкретного устройства. Но если драйвера из первого пункта установились то проблем с установкой adb драйвера по ссылке быть не должно.
4)Скачал необходимые файлы для работы
ftp сервер для скачивания раздела с андроид устройства на комп
рекомендуется filezilla
filezilla
ПО adb для доступа к устройству
adb.exe
AdbWinApi.dll
adb-windows.exe
AdbWinUsbApi.dll
fastboot.exe
Я скачал их с сайта 4pda adb скачать
правда придется зарегестрироваться на 4pda чтобы скачать
Утилита vhdtool vhdtool для конвертации полученного raw раздела перед монтированием в системе виндовс
Программа rsaver для поиска и восстановления удаленных файлов на диске под windows
rsaver
5) делаем все как указано в статье на хабре. Есть только несколько нюансов.
После команды su у вас приветствии должно быть написано root
Если root не появилось проверьте в настройках разработчика чтобы рут был включен для adb
Потом после того как вы будете пытаться соединиься с сервером filezilla на компе чтобы передать файл у вас может не происходить соединение. Тогда надо зайти в панель управления и отключить брандмауер на время копирования файла.
6) После извлечения файла раздела и преобразования его утилитой vhdtool
Необходимо смонтировать раздел в виндовс
Нажимаем правой кнопкой мышки на иконку мой компьютер, выбираем пункт Управление.
В появившемся окне, слева, выбираем Запоминающие устройства, далее Управление дисками.
В верхнем меню выбираем пункт Действие и выбираем Присоединить виртуальный жесткий диск.
В появившемся окне, в пункте тип файла (где написано Файлы виртуального диска (*.vhd)), выбираем Все файлы. После чего выбираем файл mmcblk0.raw.
После этого, в нижней части окна появится новый диск. У меня он назывался Диск 3. Справа от этой надписи будет написано Не распределен.
Нажимаем правой кнопкой мыши на надпись Диск 3 и выбираем пункт Инициализировать диск. Далее ставим галочку на пункте Таблица с GUID разделом.
Нажимаем правой кнопкой мыши на надпись Не распределен и выбираем пункт Создать простой том…В следующих окнах назначаем тому букву (например Z) и отказываемся от форматирования.
После нажатия кнопки Готово в системе появится новый Локальный диск Z и сразу же выскочит окно, предлагающее вновь его отформатировать.
Форматируем диск, при этом указывая файловую систему Fat32, стандартный размер кластера и обязательно поставив галочку на пункте Быстрое форматирование.
Всё, теперь диск готов к работе с программами по восстановлению данных.
Затем запускаем rsaver и делаем поиск удаленных файлов находим список файлов сгруппированный по типам и восстанавливает то что нам надо. Восстановились даже давно удаленные на устройстве фотки
Небольшое дополнение, недавно столкнулся с задачей восстановить удаленные файлы на планшете lenovo со стоковой прошивкой при потытки выполнить комманды
mkfifo /cache/myfifo
ftpput -v -u qwer -p pass -P 40 192.168.42.79 mmcblk0p27.raw /cache/myfifo
на mkfifo, ftpput и другие линукс команды ругается и говорит не найдены.
Это означает что необходимо установить busybox
Я поставил про версию с сайта 4pda
После этого все пошло.
На кастомных прошивках всяких циагенмодах и прочих busybox обычно уже стоит
Команда
ftpput -v -u qwer -p pass -P 40 192.168.42.79 mmcblk0p27.raw /cache/myfifo
Создает поток передачи в направлении ftp сервера filezilla
А команда в новой консоли
dd if=/dev/block/mmcblk0p27 of=/cache/myfifo
создает копию диска в созданном файле ввода вывода который мы передаем на фтп сервер
Как сделать образ внутренней памяти андроид
Обычно для этого требуется разблокировать загрузчик устройства, после чего вся информация которая не была сохранена будет утеряна. Подробнее вы можете найти в теме вашего устройства на 4pda.
В той же теме, наверняка будет инструкция, как получить Рут доступ, например через Magisk.
Однако, после этого возможно придется установить фикс, чтобы работал гугл пей и NFC оплата.
Если вы забрались так далеко, можете в теме вашего устройства посмотреть другие прошивки, на случай, если ваше устройства давно не обновлялось, и у него старые патчи безопасности. Обновление системы безопасности Android
C помощью этого кастом Рекавери забекапить нужную инфу. (Надо иметь ввиду, что там не всегда будут доступны для бэкапа абсолютно все разделы, но нужные, с прошивкой и данными должны быть).
Обычно бэкапят Data, System, Boot и Vendor (если есть). Есть и другие разделы, содержащие например IMEI, об этом ниже:
Так же может присутствовать «внутренний накопитель» или internal storage (user data), это все эти файлы и папки которые вы видите в памяти телефона без Рут доступа, но кастом рекавери разделил таким образом Data и Data/media.
Не много подробнее о назначении разделов:
Boot — Загрузка андроида начинается с раздела boot — там хранится в том числе ядро системы.
System — Затем загружается прошивка — system. Часто ее можно скачать отдельно, так что потерять в принципе не жалко.
Vendor раздел отвечает за правильную работу устройства, он тоже часто идет вместе с прошивкой, так что его можно достать из официальной прошивки с сайта производителя или на странице вашего устройства на 4пда
Ну и Data это конкретно ваша инфа, приложения настройки и сохранения игр все тут) Как я уже писал, бывает Рекавери разделяет дату и внутренний накопитель (Data/media), так вот, на внутреннем накопителе хранится то, что вы и сами могли видеть в памяти телефона фотки и тд.
Еще тут описывал, что там хранится.
Надо учитывать, что data раздел обычно зашифрован, в заводском состоянии, поэтому с помощью кастом Рекавери его форматируют и потом уже загружают прошивку.
Часто не лишним будет сохранить и другие важные разделы, на всякий случай:
EFS — Тут хранятся WiFi/BlueTooth MAC’s, IMEI, в общем все то, что вы не хотели бы потерять) (Схема с восстановлением, (MODEMST1, MODEMST2, FSG, BACKUP) где fsg или backup соответственно хранят инфу модемов на случай утери)
Persist — Этот раздел содержит данные калибровки сенсоров wifi, bluetooth, camera, DRM , sns.reg, и тд, тоже
Например у меня после смены прошивок поменялся Persist раздел, и при перезагрузке телефона писалось «Хранилище повреждено, устройство под угрозой (в опасности)»
Восстановление раздела из бэкапа помогло.
Ну и всякое прочее, вроде
CUST (так же CUSTOM или PRELOAD в некоторых случаях) — Предзагруженные приложения и региональные настройки, устанавливаемые при первом запуске. Иногда при смене прошивки на кастом нужно очистить этот раздел.
MISC (FOTA на старых устройствах) — Раздел на котором хранится информация для bootloader, что за чем загружать, или запустить рекавери, если OTA обновление не удалось. Если удалить, система будет грузится как обычно, то есть boot затем system.
Есть такие приложения для бэкапа данных с использованием Рут прав, например ® Titanium Backup
Однако, стоит учесть, что он не бэкапит папки приложения размещенные в общедоступной памяти телефона, т.е. (data/media)
Отдельно хочу отметить молодое (могут присутствовать баги) приложение, которое может создавать резервные копии пригодные для восстановления через кастом Рекавери, TWRP:
®Migrate
Удобно, когда нужно перенести данные на другую прошивку.
Когда Рут есть, можно так же с помощью ADB пробовать. (Или Adb Run)
Для аппаратов на базе SoC Qualcomm HDDRawCopy eMMC RAW Tool
Владельцам устройств с процессорами МТК при наличии пк можно скопировать полный образ всех данных (вообще всех) через flashtool
Готовый raw образ можно разбить на разделы и сконвертировать в пригодный для последующей прошивки вид с помощью этой утилиты
WwR MTK
Но чтобы прошить через ADB надо будет различить бутлоадер, или загрузчик, по нашему)
Надо учитывать что без форматирования через кастом Рекавери data раздел будет зашифрован, а пароля вы конечно не знаете)
Поэтому такой бэкап можно использовать (восстанавливать) в исходном виде, или использовать не зашифрованные разделы.
А так, кастом Рекавери может все стереть, а заодно и шифрование, чтобы в будущем бэкап был читаемым.
Тут тоже указаны некоторые утилиты для работы с файловой системой https://habr.com/ru/post/236397/
И вот для устройств с процессором Qualcomm и emmc памятью.
Восстановление и решение проблем с eMMC
Создан набор скриптов Windows (.cmd-файлы) для резервного копирования/восстановления разделов с помощью утилиты emmcdl (часть проекта Android-хост-knife).
Скачать:eMMC_DL_Tool_for_customer_ENG_V5.2.0R.zip (12.92 МБ)
Работа с программой:https://freeandroidroo…download-emmc-dl-tool/
Проверено на RN3P, но может быть использован с другими компании Qualcomm-устройств.
emmcdl использует «знакомый» модуль для взаимодействия с внутренней памяти устройства в режим 9008/edl. С prog_emmc_firehose_8976_ddr.mbn от «быстрой загрузки» прошивки, считывание/запись Таблица разделов и разделов (в том числе энергонезависимой, как modemst1/2,fsg etc.).
В этом списке раздела, успешно восстанавливаются IMEI телефона, MАС-адреса и статус загрузчика разблокировки после случайного повреждения памяти.
Может быть использован для создания файлов rawprogram0.xml прошивки с помощью MiFlash (рекомендуется) или другая утилита от Qualcomm.
qcpartsbackup11.7z (73.11 КБ)
. Не для новичков! Взято отсюда.
Сообщение отредактировал konstantinqq — 24.04.21, 08:52
Как сохранить резервную копию сразу на компьютер.
Очень полезно в тех случаях, когда под рукой нет подходящего размера флешки.
Можно конечно в кастом Рекавери смонтировать OTG накопитель, типа внешнего жесткого диска, но это такое.
При помощи ADB:
ADB и все, что с помощью него можно сделать
Или утилита в которой не надо вручную вводить команды
® Adb Run
Или так https://habr.com/ru/post/236397/
(Там что то писали про бэкап через кастом Рекавери сразу в пк.
Через кастом Рекавери:
Смонтируйте разделы, и скопируйте с помощью ADB.
Для удобства, на пк я использую файловый менеджер total Commander с плагином adb.
Разделы видятся как папки, соответственно скопировать можно файлы внутри.
Адб работает и без кастомного Рекавери с включенной отладкой по USB, но в этом случае может не хватить прав, чтобы работать с системными файлами.
Сообщение отредактировал konstantinqq — 25.10.20, 10:42
Хотелось бы больше и лучше, поэтому если есть желание — делитесь.
Кому не понятно, напишите понятно и добавьте в шапку)
Да я упомянул не все способы, но вы можете упомянуть их сами, поделившись с другими полезной информацией.
Если кому интересно как я делал полный бэкап телефона на МТК, с одним только флештулом и как создал с нуля scatter файл, в котором вся инфа о разделах. Blackview BV9100 — Обсуждение (Пост konstantinqq #89796538)
PS
Передавать данные на пк в режиме «передача данных» (MTP) может быть небезопасно если кабель не качественный, поэтому лучше пользуйтесь ADB (я например, активирую режим отладки в телефоне, подключаю к пк, и в качестве файлового менеджера использую Total Commander с плагином ADB, режим Native 8.1. При этом, при первом подключении нужно на телефоне нажать разрешить этому компьютеру отладку, если спросит.
Пс
Что делать, если раздел system только для чтения? Ответ
Сообщение отредактировал konstantinqq — 12.05.20, 19:50
Доброго времени суток.
Добавлено 18.06.2020, 14:56:
Доброго времени суток. Народ помогите ,кто знает.После восстановления бекапа через TWRP Recovery не восстановились фото и видео. Приложения и настройки , сообщения,контакты встали. А фото и видео почемуто не вскрываются.Не сколько раз делал. Ничего.
Монтирование внутренней памяти Android как Mass Storage и восстановление данных
Восстановление данных, удаленных фото и видео, документов и других элементов из внутренней памяти современных Android телефонов и планшетов стало сложной задачей, поскольку внутреннее хранилище подключается по протоколу MTP, а не Mass Storage (как флешка) и привычные программы для восстановления данных не могут найти и восстановить файлы в этом режиме.
Существующие популярные программы для восстановления данных на Android (см. Восстановление данных на Android) пробуют обойти это: в автоматическом режиме получить root-доступ (либо предоставляя сделать это пользователю), а затем — прямой доступ к хранилищу устройства, но это работает не для всех устройств.
Однако, существует способ вручную смонтировать (подключить) внутреннее хранилище Android как флешку (Mass Storage Device) с помощью команд ADB, а затем использовать любую программу восстановления данных, работающую с файловой системой ext4, использующуюся на этом хранилище, например, PhotoRec или R-Studio. О подключении внутреннего хранилища в режиме Mass Storage и последующем восстановлении данных из внутренней памяти Android, в том числе после сброса на заводские настройки (хард ресета) и пойдет речь в данной инструкции.
Предупреждение: описываемый способ не для начинающих. Если вы относите себя к ним, то какие-то пункты могут оказаться непонятными, а результат действий не обязательно будет ожидаемым (теоретически, можно сделать хуже). Используйте изложенное только под свою ответственность и с готовностью к тому, что что-то пойдёт не так, а ваше Android устройство больше не включится (но, если всё делать, понимая процесс и без ошибок, этого произойти не должно).
Подготовка к подключению внутреннего хранилища
Все действия, описанные ниже можно выполнить в Windows, Mac OS и Linux. В моем случае использовалась Windows 10 с установленной в ней подсистемой Windows для Linux и Ubuntu Shell из магазина приложений. Установка компонентов Linux не обязательна, все действия можно провести и в командной строке (и отличаться они не будут), но я предпочел этот вариант, так как при использовании ADB Shell в командной строке возникли проблемы с отображением спецсимволов, не влияющие на работу способа, но представляющие неудобства.
Прежде чем начать подключение внутренней памяти Android как флешки в Windows выполните следующие шаги:
- Скачайте и распакуйте Android SDK Platform Tools в папку на вашем компьютере. Загрузка доступна на официальном сайте https://developer.android.com/studio/releases/platform-tools.html
- Откройте параметры системных переменных среды (например, начав в поиске Windows вводить «переменных», а затем в открывшемся окне свойств системы нажав «Переменные среды». Второй способ: открыть Панель управления — Система — Дополнительные параметры системы — «Переменные среды» на вкладке «Дополнительно»).
- Выберите переменную PATH (не важно, системную или пользовательскую) и нажмите «Изменить».
- В следующем окне нажмите «Создать» и укажите путь к папке с Platform Tools из 1-го шага и примените сделанные изменения.
Если вы проделываете указанные действия в Linux или MacOS, то поищите в Интернете, как в этих ОС добавить папку с Android Platform Tools в PATH.
Подключение внутренней памяти Android как Mass Storage Device
Теперь приступаем к основной части этого руководства — непосредственно подключение внутренней памяти Android как флешки к компьютеру.
- Перезагрузите ваш телефон или планшет в режиме Recovery. Обычно для этого нужно выключить телефон, затем зажать и удерживать кнопку питания и «громкость вниз» в течение некоторого времени (5-6) секунд, а после появления экрана fastboot выбрать Recovery Mode с помощью кнопок громкости и загрузиться в него, подтвердив выбор коротким нажатием кнопки питания. Для некоторых устройств способ может отличаться, но легко находится в Интернете по запросу: «модель_устройства recovery mode»
- Подключите устройство к компьютеру по USB и подождите некоторое время, пока оно не будет настроено. Если по окончании настройки в диспетчере устройств Windows устройство будет отображаться с ошибкой, найдите и установите ADB Driver именно для вашей модели устройства.
- Запустите Ubuntu Shell (в моем примере используется именно оболочка Ubuntu под Windows 10), командную строку или терминал Mac и введите adb.exe devices (Примечание: из-под Ubuntu в Windows 10 я использую adb для Windows. Можно было бы установить adb для Linux, но тогда бы он не «видел» подключенных устройств — ограничение функций подсистемы Windows для Linux).
- Если в результате выполнения команды вы видите подключенное устройство в списке — можно продолжать. Если нет — введите команду fastboot.exe devices
- Если в этом случае устройство отобразилось, значит всё подключено правильно, но рекавери не позволяет использовать команды ADB. Вероятно, придется установить кастомный рекавери (рекомендую найти TWRP для вашей модели телефона). Подробнее: Установка кастомного рекавери на Android.
- После установки кастомного рекавери, зайдите в него и повторите команду adb.exe devices — если устройство стало видным, можно продолжать.
- Введите команду adb.exe shell и нажмите Enter.
В ADB Shell по порядку выполняем следующие команды.
В результате получаем имя устройства block, которое будет использовать далее (не теряем его из виду, запоминаем).
Следующей командной размонтируем раздел data на телефоне, чтобы иметь возможность подключить его как Mass Storage.
Далее находит индекс LUN нужного раздела, соответствующего Mass Storage Device
Будет отображено несколько строк, нас интересуют те, которые имеют в пути f_mass_storage, но пока мы не знаем, какая именно (обычно, заканчивающиеся на просто lun или lun0)
В следующей команде используем имя устройства из первого шага и один из путей с f_mass_storage (один из них соответствует внутренней памяти). Если будет введен неверный, вы получите сообщение об ошибке, тогда пробуем следующий.
Следующий шаг — создаем скрипт, подключающий внутреннее хранилище к основной системе (всё, что ниже — одна длинная строка).
В этот момент сессия ADB Shell будет закрыта, а к системе будет подключен новый диск («флешка»), представляющий собой внутреннюю память Android.
При этом, в случае Windows вас могут попросить отформатировать накопитель — не делайте этого (просто Windows не умеет работать с файловой системой ext3/4, но многие программы для восстановления данных умеют).
Восстановление данных из подключенного внутреннего хранилища Android
Теперь, когда внутренняя память подключена как обычный накопитель, мы можем использовать любую программу для восстановления данных, которая умеет работать с разделами Linux, например, бесплатную PhotoRec (доступную для всех распространенных ОС) или платную R-Studio.
Я пробую выполнить действия с PhotoRec:
- Скачиваем и распаковываем PhotoRec с официального сайта https://www.cgsecurity.org/wiki/TestDisk_Download
- Запускаем программу, для Windows и запуска программы в графическом режиме запустите файл qphotorec_win.exe (подробнее: восстановление данных в PhotoRec).
- В главном окне программы вверху выбираем устройство Linux (тот новый диск, который мы подключили). Ниже указываем папку для восстановления данных, а также выбираем тип файловой системы ext2/ext3/ext Если вам требуются файлы лишь определенного типа, рекомендую указать их вручную (кнопка «Форматы файлов»), так процесс пойдет быстрее.
- Еще раз убедитесь, что выбрана нужная файловая система (иногда переключается «сама»).
- Запустите поиск файлов (находиться они начнут на втором проходе, первый — поиск заголовков файлов). При нахождении, они автоматически будут восстановлены в указанную вами папку.
В моем эксперименте из 30 удаленных из внутренней памяти фотографий в идеальном состоянии было восстановлено 10 (лучше, чем ничего), для остальных — только миниатюры, также были найдены скриншоты png, сделанные ещё до хард-ресета. R-Studio показала примерно тот же результат.
Но, так или иначе, это не проблема способа, который работает, а проблема эффективности восстановления данных как таковой в некоторых сценариях. Так же отмечу, что DiskDigger Photo Recovery (в режиме глубокого сканирования с root) и Wondershare Dr. Fone for Android показали сильно худший результат на том же устройстве. Конечно, вы можете попробовать и любые другие средства, позволяющие восстанавливать файлы с разделов с файловой системой Linux.
По окончании процесса восстановления, извлеките подключенное USB устройство (используя соответствующие способы вашей операционной системы).
Затем можно просто перезагрузить телефон, выбрав соответствующий пункт в меню рекавери.
Как сделать полный бэкап Андроида
На современных смартфонах хранится огромное количество необходимой и важной информации, а каждый пользователь настраивает телефон индивидуально под себя. И вот, переходя на новый девайс, владелец Андроид сталкивается с ситуацией, когда требуется вновь настройка операционной системы. Идеальный выход здесь – глубокое или частичное резервное копирование. Но не все знают, как сделать полный бэкап Андроида быстро и безопасно используя планшет или телефон, не потеряв важные данные.
Как сделать бэкап отдельных приложений на Андроид
Не всегда требуется копировать всю систему, да и процесс это достаточно кропотливый. Если вам необходимо сохранить только конкретные программы – рекомендуем воспользоваться именно этим методом. И здесь идеальным вариантом является специально приложение Helium.
Данный инструмент без проблем можно скачать в свободном доступе с Google Play. Работает он на двух «базах»: или предоставление root-прав и все махинации проводятся только на смартфоне, или подключение USB-кабеля и доступ к ПК, если вы не имеете режима «Суперпользователя».
Приложение позволяет сохранять копии на SD-карте и в облачных хранилищах, а именно Drobox, Google Drive и Box, что очень удобно.
Она умеет:
- Делать резервное копирование истории входящих и исходящих звонков;
- Бэкап приложений и их настроек;
- Резервное копирование СМС и контактов.
Приложение идеально работает на свежих версиях операционной системы, преимущественно на Андроид 7.0, 7.1 и 8.0. А теперь рассмотрим, какие же действия будем в нем выполнять:
- Скачиваем и устанавливаем приложение на телефон. Если рут-прав нет, повторяем эту процедуру на компьютере. Доступны версии и для Windows, и для Mac. Также для ПК необходимы драйвера. Найти их можно на официальном сайте производителя подключаемого смартфона.
- Теперь приступаем непосредственно к самой операции резервного копирования. Для этого открываем приложение на девайсе. По надобности подключаемся через провод к компьютеру. Нам предлагается несколько вариантов: полный бэкап телефона или только конкретных приложений. Обратите внимание, что скопировать можно как всю программу с данными, так и только данные.
- После всех выставленных галочек кликаем «Резервное копирование». Выбираем, куда сохранить. Если в Облако, то указываем адрес, если в компьютер – открываем сервис с IP-адресом и переносим его в строку поиска браузера. Там разрешаем копирование. Готово. Копии успешно созданы.
Как сделать правильную резервную копию всей системы Андроид
А вот здесь уже дела обстоят немного сложнее, так как нам нужна полная сохраненная копия Андроид. Разумеется, и места она занимать будет больше, и для ее создания предусмотрено несколько разнообразных способов. В целях профилактики рекомендуем раз в несколько недель проводить такой бэкап, а вот перед прошивкой или осуществлением других важных системных процессов – он просто необходим здесь и сейчас.
Бэкап через системную опцию (No Root)
Самый легкий и комфортный вариант, подходивший новичкам и просто пользователям, не желавшим тратить свое время. Открываем «Настройки», переходим в пункт «Система» – «Резервное копирование», в месторасположении выбираем Google Диск. Сделано. Сохраняться будет такая информация:
- Стандартные настройки (язык, время и дата);
- Точки доступа Wi-Fi и пароли, если они активированы;
- Настройки экрана (обои, темы, яркость);
- Приложения (в большинстве случаев просто перечень, но не внутренние настройки и достижения в играх);
- Контент, расположенный в Google Календаре;
- Материалы, хранившиеся в Gmail, индивидуальные настройки почты.
К сожалению, возможны сбои в процессе резервного копирования, из-за чего многие пользователя жалуются на недостаточное количество сохраненной информации. А на некоторых устройствах такая системная функция вообще отказывается работать, это может коснуться телефонов с операционной системой ниже Андроида 6.0.
Бэкап Андроида с помощью FlashTool (No Root)
Это уже более серьезная и тяжелая процедура, позволяющая провести резервное копирование всей прошивки. Этапов будет много, и пользователям, которые не уверены в своих силах и технических знаниях, мы данный вариант не рекомендуем! А вот если вы знаток Андроида «со стажем», то можете смело приступать.
Для начала подготавливаем все необходимые материалы, чтобы в процессе бэкапа не приходилось на них отвлекаться.
- Скачиваем непосредственно саму программу с официального сайта разработчика (flashtool.net);
- Находим оригинальную прошивку, сделанную именно для вашего смартфона;
- Если на компьютере отсутствуют драйвера МТК, загружаем их.
- Получаем доступ до ПК, так как без него бэкап здесь невозможен, проверяем работоспособность USB-кабеля и исправность разъемов.
- Далее извлекаем два файла из прошивки, а именно название номера с разрешением txt и weg_l.bin. Эти материалы перемещаем в отдельную, пустую папку.
- Также туда помещаем папку, где хранится софт.
- Запускаем раннее скачанную программу FlashTool от имени администратора, это обязательное условие.
- Открывается страница, на которой нужно указать путь к scatter.txt с помощью встроенного обычного проводника.
- Должен появиться новый экран, где расположены блоки памяти. С ними и необходимо провести бэкап. Для этого переходим во вкладку «Memory Test». Ставим галочки напротив первых пяти пунктов.
- Выключаем телефон, нажимаем на компьютере «Start».
- Теперь подключаем смартфон, используя USB.
- Информация начинает считываться и выводится на экран. Как только процесс закончен, устройство отсоединяем от персонального компьютера.
- Открываем «Блокнот» и переносим туда полученные данные. Обратите внимание, что пустые секторы копировать не нужно. Сохраняем и закрываем блокнот.
- Вновь возвращаемся на главную страницу FlashTool, убираем выставленную галочку напротив первого пункта.
- Открываем раздел «Readback» – «Добавить». Появляется новая строчка, на которую кликаем два раза.
- Указываем, куда именно сохранить бэкап и придумываем имя.
- Появляется небольшое меню, просящее указать настройки для каждого сектора. Да-да, отдельный блок памяти нуждается в отдельной настройке. Изменяем только колонку «Length», в которую добавляем данные блока из сохраненного блокнота.
- Кликаем «ОК» и нажимаем на верхнюю кнопку «Read Back».
- И последнее финальное действия: вновь подключаем телефон и наблюдаем за процессом копирования. В конце должна появиться зеленая иконка, сообщающая, что операция завершена. Сделано! Теперь повторяем аналогичные действия с оставшимися секторами.
После окончания резервного копирования файлы можно переместить в любое облачное хранилище, ведь если с компьютером или жестким диском случится какая-то крупная неприятность – сохраненная информация будет потеряна, не рискуйте!
Бэкап через Titanium Backup (Root)
Довольно легкий и комфортный вариант с использованием специальной программы Titanium Backup. Скачать ее без проблем можно в Google Play и установить стандартным способом.
Восстановление данных из внутренней памяти на Android для чайников
Сейчас всё больше смартфонов идут без слота для sd-card, и информацию приходится хранить на встроенной памяти с доступом к ней по MTP. Такой режим подключения не позволяет стандартными средствами восстановить данные телефона после wipe’а или случайного удаления.
Сегодня на примере связки Xiaomi Mi2s и Windows 8.1 я постараюсь рассказать, как можно восстановить утерянные данные, кому интересно, добро пожаловать под кат.
Следует заметить, что если вы по ошибке отформатировали внутреннюю память смартфона/планшета/смартпэда, то не стоит расстраиваться, а главное, ни в коем случае не нужно ничего записывать в память устройства, так у вас получится восстановить больше данных.
Протокол MTP не позволяет компьютеру распознать подключенный девайс как USB-накопитель и программы для восстановления не могут просканировать такое устройство и спасти данные, поэтому нам потребуется скопировать весь внутренний раздел памяти в виде образа системы.
Подготовка Android-устройства
Вам понадобится root и включенная отладка по USB.
Подготовка PC
Для того, чтобы скопировать раздел системы, нам понадобится:
- VHDtool;
- Драйвера для вашего устройства (в случае проблем habrahabr.ru/post/205572);
- ADB (adbdriver.com или developer.android.com);
- Сервер FileZilla.
Сперва устанавливаем USB-драйвера для вашего устройства и ADB. После этого советую перезагрузить ПК.
VHDtool
Создаём папку с адресом C:cygwin64 00 (имя не имеет значения, не стоит только использовать буквы отличные от латиницы), здесь будет лежать наш образ. Копируем в папку VHDtool.exe.
FileZilla
В ходе инсталяции соглашаемся на все стандартные установки.
После установки FileZilla запустится автоматом, но из программы необходимо выйти и запустить её от имени Администратора.
При запуске FileZilla спросит имя сервера, оставляем всё как есть.
Далее заходим Edit — Settings и делаем следующие настройки:
listen on those ports 40
timeout settings — по умолчанию стоит 120, 60, 60, а мы ставим везде 0 и нажимаем ОК.
Заходим в edit — users. В окошке users создаем нового юзера. В моем случае это юзер qwer.
Нажимаем Add — пишем имя — пароль pass — нажимаем ОК.
Далее в том же меню Users, слева выбираем закладку Shared folders. Заходим туда и добавляем папку в которую будет заливаться наш блок. Нажимаем Add и добавляем папку C:cygwin64 00. В окошке появится путь к этой папке. Если слева от надписи C:cygwin64 00 не будет буквы H, то нужно нажать Set as home dir. Затем выделив строчку C:cygwin64 00 нужно отметить права Read и Write галочками. Затем нажать ОК.
Нам понадобятся следующие файлы:
- adb.exe
- AdbWinApi.dll
- adb-windows.exe
- AdbWinUsbApi.dll
- fastboot.exe
Скачать их можно на тут.
Или вытащить из дистрибутива Android SDK.
Копируем их в папку C:cygwin64bin
Проверка работы ADB
Запускаем консоль из папки C:cygwin64bin, для этого достаточно вписать cmd в адресную строку проводника
Список подключенных девайсов не должен быть пуст, если после строчки List of devices attached пусто, то вы не установили USB-драйвера или не включили отладку по USB.
Когда всё идет хорошо, консоль выглядит так:
20352f2c – мой Xiaomi Mi2s
Режим модема по USB
Теперь нам необходимо узнать, какой IPv4 адрес получил ваш компьютер.
Используем команду ipconfig в командной строке
или
Идем по пути: Панель управленияСеть и ИнтернетЦентр управления сетями и общим доступом
Кликаем по надписи ’Подключение по локальной сети’ далее Сведения и копируем адрес IPv4.
В моём случае это 192.168.42.79
Важно! При каждом переподключении USB кабеля и вкл/выкл режима модема IPv4 будет меняться.
Какой блок памяти нам нужен?
Вся память в вашем устройстве делится на логические блоки, нам не нужно качать все, достаточно понять, какой раздел содержит стёртую информацию.
Теперь нам необходимо посмотреть список блоков памяти, для этого вводим построчно следующие команды:
Hint: если вам лень вручную переписывать команды или вы боитесь допустить ошибку, то можно воспользоваться копированием, но вставить привычным способом строчку в консоль не выйдет, поэтому необходимо кликнуть правой кнопкой мыши по окну консоли, далее выбрать изменить > вставить.
После чего во внутренней памяти появится файл list_of_partitions.txt, который нам необходимо скопировать на ПК и изучить.
Скопировать его можно в нашу папку 000 с помощью простой команды (выполнять её следует в отдельном окне командной строки):
Внутренней памяти в моём аппарате 32 GB. Поэтому я ищу самый большой раздел, в моём случае это mmcblk0p27 размером 25,6 GB, у вас он скорее всего будет иметь другое имя, или вообще не будет иметь приписки p**. Безусловно, никто не гарантирует что именно самый большой раздел окажется тем самым на котором еще совсем недавно лежали ваши фото, видео, документы и тд., но в 90% случаев это оказывается именно тот раздел памяти который нам нужен. В противном случае вам придется по порядку копировать все образы и проверять каждый из них.
Копируем раздел памяти на ПК.
Если вы уже закрыли окно cmd, то запускаем его снова.
Вводим команды построчно:
Не забудьте внести соответствующие корректировки в код!
qwer – имя учетной записи в FileZilla (у вас свой если меняли)
pass – пароль от учетной записи в FileZilla (у вас свой если меняли)
40 – порт сервера FileZilla
192.168.42.79 – адрес сервера FileZilla (у вас свой)
mmcblk0p27.raw – копируемый блок памяти (у вас свой)
Открываем второе окно командной строки и вводим команды:
Не забудьте исправить mmcblk0p27 на номер своего блока!
Смотрим в окно FileZilla и видим, что скачивание mmcblk0p27.raw в папку C:cygwin64 00 началось, теперь можно закрыть окна cygwin и сделать перерыв на чай.
Конвертируем и восстанавливаем
Вернулись? Файл скачался? Отлично. Отключаем телефон, подключаем интернет. Запускаем Cygwin.bat и вводим следующие команды.
Не забудьте исправить mmcblk0p27 на номер своего блока!
У меня конвертирование заняло пару секунд. На выходе у нас получается всё тот же файл mmcblk0p27.raw в папке C:cygwin64 00, но уже немного другой. Этот сконвертированный файл можно смонтировать как виртуальный диск, или, например через R-studio, произвести восстановление данных непосредственно из нашего образа. Я так и поступил.
Hint: важные моменты пометил желтым.
Итоги
Моей целью было популярным языком объяснить способ копирования системного раздела с android-девайса на ПК, возможно, некоторые упрекнут меня в сложностях, связанных с USB-модемом и ftp, и скажут, что наверняка можно было проще вытащить образ. Отвечу так: я пробовал другими способами, описанными на 4pda и xda-developers, у меня не вышло, зато с ftp получилось со второй попытки, а входе написания статьи всё вообще прошло как по маслу.
У меня получилось восстановить все утерянные фото без потерь в качестве и даже то, что я и не думал восстановить. В ходе восстановления обнаружились фотографии, которые делал в августе прошлого года, когда только купил телефон и тестировал камеру.
В завершении хочется также упомянуть еще одну небольшую утилиту, которая восстанавливает данные — DiskDigger undelete. Она бесплатная, неплохой функционал, но к сожалению, после 40% она у меня вывалилась с ошибкой.
Снять образ с Android (снять дамп разделов system, kernel, data, zImage)
Многие начинающие ромоделы Android или гики не знают как снять образ с Android. В данной статье подробно рассказано как узнать нужные вам /dev/block, как снять дампы с них, разобрать их или в последствие восстановиться.
Для тех кто ничего не понял о чем речь. В данной статье будет подробно рассказано как снять текущее состояние с разделов Android — system, data, efs, preload, cache или выдрать ядро (zImage / boot.img). С какой целью расписываться здесь не будет, так как это уже другая история.
Необходимо для снятия образа
- Скачайте и установите на ПК фирменную программу сайта ADB RUN (если в курсе, что такое adb или установлено Android SDK, то устанавливать не нужно);
- Android смартфон или планшет должен быть c Root правами Подробно о Root Android:
- Что такое Root?
- Как получить Root?
- Активировать Отладка по USB;
- Установить драйвера если вдруг не установлены;
- USB кабель.
Инструкция как снять образ с Android
- Подключите устройство Android к ПК
- Запустите программу ADB RUN и перейдите в меню (a) Adb
Узнаем /dev/block разделов
Что такое /dev/block/? /dev/block/ — это «диски» на которых находятся разделы system, data, cache.
Вариант 1
Данный способ самый простой, но к сожалению узнать, где находиться ядро не возможно.
Для того чтобы узнать /dev/block/ вводим команду:
adb shell mount
Получаем список, где видим список с нашими разделами и к каким /dev/block/ они примонтированы
Вариант 2
Подключаем Android к компьютеру в adb вводим:
Получаем весь список блоков.
Снятие образа Android с выбранного раздела
И так когда мы уже знаем где находятся какие разделы, можно приступать к снятию образа Android (дампа) с выбранного раздела. Перед тем как начать убедитесь что у вас достаточно много свободной памяти на карте памяти!
- Для того чтобы снять образ необходимо в ADB RUN зайти в меню (7) Manual Command > (1) Adb
- Залогиниться в терминале под Root -ом:
3. Набрать linux команду для снятия дампа:
dd if=/dev/block/XXXXX of=/sdcard/NAME_razdel.img
- где XXXXXXXXX— раздел с которого вы снимаете
- где NAME_razdel.img — имя которое вы присвоите при снятии образа с выборного раздела (давать имена лучше также как они указаны, если data то data)
Процедура снятия может занять определенное время, от 1 минуты до 15, в это время лучше не дергать ваш Android!
[Обновление]
В новых версиях ADB RUN появилась возможность быстро снять образ каждый раз не набирая столь длинные команды. Все что вам нужно это знать имя блока.
Когда вы уже знаете необходимый блок, перейдите в ADB RUN:
- С главного меню в раздел Backup -> Backup dev/block
- Выбираем Backup
- Указываем последние данные с блока (данные после block/)
- Ждем пока снимется образ (не трогать Android)
Восстановление раздела из созданного образа Android (дампа раздела)
Когда вам будет необходимо выполнить восстановление из ранее созданного образа, нужно сделать вот, что:
Убедитесь что образ все еще находиться в разделе /sdcard — так как бекап создавался именно в этот раздел, либо переместите его обратно.
Прописать следующую команду:
dd if=/sdcard/NAME_razdel.img of=/dev/block/XXXX
- где XXXXXXXXX— раздел на которой вы заливаете образ
- где NAME_razdel.img — имя образа выборного раздела (давать имена лучше также как они указаны, если data то data)
Процедура восстановления может занять определенное время, от 1 минуты до 30 в это время лучше не дергать ваш Android!
[Обновление]
Особенно актуально для тех кто не удачно выполнил S-OFF (или планирует выполнить) или неудачно прошил кастомную прошивку, либо после не удачных экспериментов!
Для устройств Sony, HTC, Xiaomi и других устройств на которых есть режим Fastboot могут выполнить восстановление следующим образом после ранее обязательного снятия boot.img (zImage) и system.img (factoryfs.img) скопируйте данные образы на ПК:
- Переведите Android в режим fastboot (bootloader) и подключить к ПК;
- Файлы boot.img и system.img переместить в папку C:/adb_run/bin;
- Запустить ADB RUN и перейти в пункт (a) ADB;
- Набрать следующие команды (подробно о Fastboot):
fastboot flash boot boot.img
fastboot flash system system.img
Система будет восстановлена в исходное состояние! Можете продолжать эксперименты!
На этом все! Подписывайтесь и Оставайтесь с сайтом Android +1! Удачи!