Разделы андроид для прошивки

Как прошить через Fastboot

Прошивка Android, т.е. запись определенных файл-образов в соответствующие разделы памяти девайса при использовании специального Windows-софта, практически полностью автоматизирующего процесс, на сегодняшний день является не самой сложной c точки зрения пользователя процедурой. Если же использование подобного инструментария невозможно или не дает нужного результата, ситуацию спасает Fastboot .

Для того, чтобы прошить Андроид-аппарат через Fastboot, потребуется знание консольных команд одноименного режима работы девайса, а также определенная подготовка смартфона или планшета и используемого для операций ПК.

Ввиду того, что в фастбут-режиме манипуляции с разделами памяти девайса производятся фактически напрямую, при использовании нижеописанного метода прошивки требуется некоторая осторожность и внимательность. Кроме того, выполнение нижеперечисленных шагов, вероятно, следует рекомендовать только при отсутствии возможности выполнить прошивку другими способами.

Как прошить через Fastboot

Содержание — Как прошить через Fastboot:

Подготовка

Четкое выполнение подготовительных процедур предопределяет успех всего процесса прошивки устройства, поэтому осуществление нижеописанных шагов можно считать обязательным условием перед проведением операций.

Установка драйверов

О том, как установить специальный драйвер для фастбут-режима, можно узнать из статьи: Установка драйверов для прошивки Android

Бэкап системы

Если существует малейшая возможность, перед прошивкой обязательно осуществляется создание полной резервной копии существующих разделов памяти устройства. Необходимые для создания бэкапа действия описаны в статье: Как сделать бэкап Android-устройства перед прошивкой

Загрузка и подготовка необходимых файлов

Fastboot и ADB являются взаимодополняющими друг друга инструментами из состава Android SDK. Загружаем инструментарий полностью или скачиваем отдельный пакет, содержащий только АДБ и Фастбут. Затем распаковываем полученный архив в отдельную папку на диске С.

Через Fastboot возможна запись как отдельных разделов памяти Андроид-девайса, так и прошивок-обновлений целым пакетом. В первом случае понадобятся файлы-образы в формате *.img, во втором – пакет(ы) *.zip. Все файлы, которые планируются к использованию, должны быть скопированы в папку, содержащую распакованные Fastboot и ADB.

Пакеты *.zip не распаковываем, необходимо лишь переименовать загруженный файл(ы). В принципе имя может быть любым, но не должно содержать пробелов и русских букв. Для удобства следует использовать короткие имена, к примеру update.zip. Кроме прочего необходимо учитывать тот фактор, что Fastboot чувствителен к регистру букв в посылаемых командах и именах файлов. Т.е. «Update.zip» и «update.zip» для фастбут — разные файлы.

Запуск Fastboot

Поскольку Fastboot является консольным приложением, работа с инструментом осуществляется при помощи введения команд определенного синтаксиса в командную строку Windows (cmd). Для запуска Фастбут проще всего использовать следующий метод.

1. Открываем папку с Фастбут, нажимаем на клавиатуре клавишу «Shift» и, удерживая ее, кликаем правой кнопкой мыши на свободной области. В раскрывшемся меню выбираем пункт «Открыть окно команд».

2. Дополнительно. Для облегчения работы с Fastboot можно применять программу Adb Run .

Эта надстройка позволяет производить все операции из нижеописанных примеров в полуавтоматическом режиме и не прибегать к ручному вводу команд в консоль.

Перезагрузка девайса в режим bootloader

1. Чтобы устройство принимало команды, посылаемые пользователем через Фастбут, оно должно быть перезагружено в соответствующий режим. В большинстве случаев достаточно послать в девайс со включенной отладкой по USB специальную команду через adb:

2. Устройство перезагрузится в нужный для прошивки режим. Затем проверяем правильность подключения с помощью команды:

3. Перезагрузку в режим fastboot можно также осуществить с помощью соответствующего пункта в TWRP Recovery (пункт «Fastboot» меню «Перезагрузка» («Reboot»).

4. Если вышеописанные способы перевода аппарата в фастбут-режим не срабатывают или неприменимы (аппарат не загружается в Android и не входит в рекавери), необходимо воспользоваться сочетанием аппаратных клавиш на самом девайсе. Для каждого модельного ряда эти сочетания и порядок нажатия кнопок отличаются, универсального способа входа, к сожалению, не существует.

Исключительно для примера можно рассмотреть продукцию компании Xiaomi. В этих устройствах загрузка в фастбут-режим осуществляется с помощью нажатия на выключенном аппарате кнокпки «Громкость-» и, удерживая ее, клавиши «Питание».

Еще раз отметим, у других производителей методология способа входа в фастбут-режим с помощью аппаратных кнопок и их сочетаний может отличаться.

Разблокировка загрузчика

Производители определенного ряда Андроид-аппаратов блокируют возможность управления разделами памяти устройства через блокировку загрузчика (bootloader). Если у устройства заблокирован загрузчик, в большинстве случаев его прошивка через фастбут неосуществима.

Для проверки статуса загрузчика можно послать в устройство, находящееся в режиме fastboot и подключенное к ПК, команду:

Читайте также:  Как можно вернуть старую версию андроида

Но вновь приходиться констатировать, что данный способ выяснения статуса блокировки не универсален и отличается для устройств разных производителей. Это утверждение также касается разблокировки bootloader – методология проведения процедуры отличается для разных устройств и даже для различных моделей одного бренда.

Как разблокировать Bootloader

Запись файлов в разделы памяти девайса

Завершив подготовительные процедуры, можно переходить к процедуре записи данных в разделы памяти устройства. Еще раз перепроверяем корректность загрузки файлов-образов и/или zip-пакетов и их соответствие прошиваемому устройству.

Установка zip-пакетов

Для записи в девайс, к примеру OTA-обновлений, или полного комплекта составляющих ПО, распространяемых в формате *.zip, используется fastboot-команда:

1. Убеждаемся, что устройство находится в режиме фастбут и корректно определяется системой, а затем делаем очистку разделов «cache» и «data». Это удалит все данные пользователя из устройства, но является в большинстве случаев необходимым шагом, так как позволяет избежать множества ошибок при прошивке и дальнейшей работе программного обеспечения. Выполняем команду:

2. Записываем zip-пакет с прошивкой. Если это официальное обновление от производителя, используется команда:

В других случаях применяем команду

3. После появления надписи «finished. total time….» прошивка считается завершенной.

Запись img-образов в разделы памяти

Во многих случаях поиск прошивки в формате *.zip для загрузки может быть затруднен. Производители девайсов неохотно выкладывают свои решения в Сеть. Кроме того, zip-файлы могут быть прошиты через рекавери, поэтому целесообразность использования способа записи zip-файлов через фастбут вызывает сомнения.

А вот возможность прошивки отдельных образов в соответствующие разделы, в частности «boot», «system», «userdata», «recovery» и др. через Fastboot при восстановлении аппарата после серьезных программных проблем, может спасти ситуацию во многих случаях.

Для прошивки отдельного образа img используется команда:

1. В качестве примера запишем раздел рекавери через фастбут. Для прошивки образа recovery.img в соответствующий раздел отправляем в консоли команду:

Далее необходимо дождаться в консоли появления ответа «finished. total time…». После этого запись раздела можно считать завершенной.

2. Аналогичным способом прошиваются другие разделы. Запись файл-образа в раздел «Boot»:

«System»:

И таким же образом все остальные разделы.

3. Для пакетной прошивки сразу трех основных разделов – «boot», «recovery» и «system» можно использовать команду:

4. После завершения выполнения всех процедур аппарат можно перезагрузить в Андроид прямо из консоли, послав команду:

Таким образом производится прошивка с помощью команд, посылаемых через консоль. Как видим, большее количество времени и сил отнимают подготовительные процедуры, но, если они выполнены правильно, запись разделов памяти устройства происходит очень быстро и почти всегда беспроблемно.

Источник

тут блог

Общественные обязательства интроверта.
Сообщения на ИТ тематику, но не обязательно.

О прошивке Андроида

Попробую собрать воедино тайные знания о том, как перепрошивать Андроид устройства. Тут много малопонятных терминов и загадочных процедур. Постараюсь обобщить.

ВНИМАНИЕ! Все прошивки, рекавери и прочее собираются энтузиастами. В лучшем случае (например, CyanogenMod) — сообществом энтузиастов. Но весьма часто и анонимными индивидуумами. Так что нет никаких гарантий, что после перепрошивки все будет работать как надо. В том числе и я не даю никаких гарантий, что, прочтя этот пост, вы сможете безболезненно перепрошить любое устройство. Действуйте на свой страх и риск. И помните, что любое изменение прошивки вашего устройства как правило лишает вас гарантии.

Начнем с терминологии.

Рекавери (recovery). Это некий аналог bios setup. Программа, которая хранится в отдельной специальной памяти устройства. И которая может быть запущена при загрузке (перезагрузке) устройства. И которая позволяет делать всякие страшные действия, пока основная ОС не запущена.

В устройстве всегда уже есть штатное рекавери. Оно запускается при обновлении прошивки «по воздуху». Тот самый зеленый робот с шестеренками в животе — это картинка, отображаемая штатным рекавери. А вот чтобы поставить какую-то другую прошивку — нужно прошить кастомное рекавери.

Рекавери доступны в виде образов (.img файлов).

Что можно сделать в рекавери? Перезагрузить устройство (уже в обычном режиме). Установить zip архив (об этом ниже). Вайпнуть разделы (тоже ниже). Забэкапить и отресторить само рекавери и, иногда, разделы и приложения.

ClockworkMod (CWM, CWMR) — один из самых популярных рекавери. Существует в двух версиях. В «обычной» версии навигация по меню осуществляется клавишами (теми немногими, что остались) устройства: громкость тише/кромче — это вверх/вниз и т.п. В «touch» версии можно все тыкать пальцами, что конечно, удобнее. На современных устройствах нет противопоказаний против touch версии, ставьте её.

Читайте также:  Sdk platform tools release notes android studio

Вайп (wipe). Это форматирование ( удаление всех данных! ) раздела. Дискового раздела, ну точнее раздела встроенной флэш-памяти. Дело в том, что в Андроид имеется несколько разделов.

boot — это раздел в Линукс ядром. Как правило явно вайпать его не нужно. (А если вайпните по ошибке — все пропало 🙂

В system хранятся системные (предустановленные) приложения и данные. Вайпать этот раздел нужно только если вы собираетесь ставить абсолютно новую прошивку.

В data устанавливаются пользовательские приложения и хранятся пользовательские данные. Ну кроме тех данных, что помещаются на SD карту, реальную или виртуальную. Стандартная штука «Сбросить на заводские настройки» как раз и вайпает этот раздел. Соответственно, делайте это, если хотите удалить все приложения (и данные), кроме предустановленных.

cache — это кэш. Кэш Далвика (Dalvik, ява-машины в Андроид) и не только. Сюда помещаются всякие оптимизационные данные, чтобы приложения запускались и работали быстрее. Именно в этот раздел что-то записывается, когда, после обновления прошивки, Андроид радостно сообщает об «оптимизации 50 из 100500 приложений». Может, видели. Иногда бывает, что некоторые глюки приложений лечатся вайпом этого раздела. Жизненно необходимо его вайпать при обновлении прошивки.

Прошивка (ROM, custom ROM). Это «образ» системы. Которым вы заменяете штатную систему (ну или ту, которая установлена на данный момент).

Если в десктопном мире под образом системы понимают образ жесткого диска или CD, то «образ» прошивки Андроида — это обычный zip архив. Этот архив содержит обычные файлы, которые распаковываются в обычные каталоги в файловой системе устройства. Соответственно, то, что распаковывается в /system замещает системные файлы (потому нужно делать вайп этого раздела, чтобы не остались ошметки старой прошивки).

Впрочем, этот zip архив может содержать и готовые образы (.img, в «десктопном» смысле), например, для /boot раздела. Также файлы в архиве подписаны (примерно так, как делается в явовых .jar архивах). И имеются скрипты, которые выполняются при установке архива.

Найти прошивки можно в основном на 4PDA или XDA. Это форумы (кто сказал, что форумы вымерли?), и поиск там оставляет желать лучшего. Но они успешно индексируются Гуглом.

CyanogenMod (Цианоген, Циан) — самая популярная кастомная прошивка. Если не знаете, чем прошиваться, попробуйте Цианоген. Чаще всего Цианоген — не самая быстрая прошивка (если у вас старое устройство и вы хотите выжать все, что можно). Потому что он стал грешить кучей предустановленного софта. Но почти всегда Цианоген — самая стабильная прошивка (из кастомных, естественно).

Гуглоприложения (GoogleApps, gapps). Кастомные прошивки не содержат «стандартных» гугловых приложений вроде Google Play, Gmail и т.п. Потому что эти приложения — проприетарные, и их нельзя так просто распространять. Но их все же можно скачать и установить.

Это обычные zip архивы. Такие же, как прошивка. Просто содержат меньше файлов. И прошиваются точно так же.

Радио (radio, radio module). Кроме рекавери есть еще одна область памяти. Программа радио-модуля. Того самого, который GSM, GPS, Bluetooth, Wi-Fi и т.д. У него тоже есть какая-то программа и её можно обновить. Это всегда какой-то .img файл неясного происхождения. Говорят, если прошить на более новую версию, радиофункции могут начать работать лучше, могут исправиться какие-нибудь глюки. Помните только, что этот образ сильно завязан на конкретное железо. А железо может быть разным даже для одной и той же модели телефона. Будьте внимательны.

Бутлоадер (bootloader). Это еще одна программа и еще одна область памяти, которую можно прошить. Это системный загрузчик, который грузит либо рекавери, либо систему. Это он показывает красивую анимацию при загрузке устройства. Это еще один режим загрузки (кроме запуска основной ОС и рекавери), в который иногда нужно попасть, чтобы заменить рекавери. Иногда этот режим называют fastboot (об этом ниже).

Лок (lock, unlock). Часто бывает, что рекавери или другие области памяти закрыты на запись. Залочены. Перед перепрошивкой эту блокировку надо снять. У хороших производителей это делается одной командой, например fastboot oem unlock . У плохих производителей нужна либо специальная утилита (причем работает она, небось, только под Windows), либо специальные хаки. Особо плохие производители могут ограничить количество разблокировок устройства, чтобы вам не захотелось слишком часто его перепрошивать.

Рут (root). Root — это суперпользователь в Unix. Такой пользователь может делать с системой все, что ему будет угодно. Обычные программы в Андроид никогда не имеют подобных прав. Но если «рутануть» устройство, то некоторые программы (вроде бэкапера или менеджера тех же прошивок) смогут получить эти самые права рута. В результате открываются некоторые интересные, но потенциально опасные возможности.

Технически рутование — это установка в систему юниксовой программы sudo (или su ?) и некоей андроидной мордочки для контроля и раздачи прав. Другие программы, которые хотят рута, уже знают, что запустить и кого спросить.

Читайте также:  Android firebase cloud messaging tutorial

Рута иногда нужно получить, чтобы появилась возможность перепрошить рекавери. А иногда нужно обновить рекавери, чтобы появилась возможность рутануть устройство. В особо запущенных случаях временное получение прав рута делается через известные уязвимости системы. Тут все индивидуально для разных моделей устройств.

fastboot. Утилита для работы с разделами и прошивками устройства, подключенного по USB. С недавних пор является частью Android SDK и доступна не только под Windows. Нужна для снятия локов, прошивки радио и рекавери, перезагрузки в разные режимы. Чтобы fastboot работал, устройство нужно перезагрузить в соответствующем режиме (bootloader, он же fastboot).

adb (Android Debug Bridge). Стандартная утилита для отладки андроидных программ (на устройстве, подключенном по USB). Тоже часть SDK. В данном случае нужна для перезагрузки в разные режимы, доступа к командной строке устройства (да, в Андроиде тоже есть шелл), копирования файлов на SD карту (или внутреннюю память устройства). adb работает, когда устройство загружено в нормальном режиме (загружен Андроид) и влючена отладка по USB в инструментах разработчика (об этом ниже).

Кирпич (окирпичить, brick, to brick). Так называют устройство, прошивка которого не удалась и устройство перестало загружаться. Получается дорогой кирпичик из пластика, металла, стекла и кремния. Существуют способы вывести устройство из такого состояния. Но тут все зависит от тяжести случая и конкретной модели устройства.

Последовательность прошивки индивидуальна у каждого устройства. Поэтому ищите инструкцию именно для своего девайса и следуйте ей. Но тем не менее, общие принципы соблюдаются. Их я и опишу. Хорошие инструкции, которые можно адаптировать под любые прошивки, имеются в вики CyanogenMod.

Вся процедура прошивки делается с «большого» компьютера под управлением Windows, Linux или MacOS (хотя сильно ощущается доминирование Windows среди прошивкоделателей). Андроид устройство должно быть подключено по USB.

  • Подготовка
    • Определите точную модель устройства, с точностью до версии аппаратного обеспечения (одна и та же модель, выпущенная в разное время и для разных регионов, может иметь разное железо).
    • Определитесь с прошивкой, которую собираетесь ставить.
    • Найдите подробные инструкции о том, как прошивать данную прошивку на данном устройстве.
    • Скачайте zip файл прошивки. Поместите файл в корень SD карты (или внутренней памяти) устройства.
    • Определитесь с версией рекавери. Скачайте img файл рекавери.
    • Определитесь с набором дополнительного ПО, которое хотите поставить вместе с прошивкой: gapps, рута и т.п. Скачайте zip архивы и скопируйте их на устройство.
    • Скачайте дополнительные утилиты (например, для снятия блокировки), если необходимо.
    • Скачайте и установите Android SDK. Под Windows вам понадобится еще установить USB драйвер.
    • Включите инструменты разработчика на устройстве. В Настройках зайдите в раздел «О телефоне» и быстро потыкайте по пункту «Версия ядра».
    • Включите «Отладку по USB» в настройках «Для разработчиков».
    • Полностью зарядите устройство (во время прошивки оно заряжаться не будет, и совсем плохо, если сядет батарея).
  • Прошивка
    • Подключите устройство к компьютеру USB кабелем.
    • Загрузитесь в режим fastboot. Для этого нужно сначала выключить устройство, а потом нажать хитрую комбинацию кнопок. Что-нибудь вроде Power + Volume Up + Volume Down. Или же может сработать команда adb reboot bootloader . Возможно, чтобы загрузиться в fastboot, вам понадобится рут. Сверяйтесь с инструкцией.
    • Разлочьте устройство. Тут все индивидуально. В простейшем случае может оказаться достаточным выполнить команду fastboot oem unlock .
    • Прошейте новое рекавери. В простейшем случае хватит команды fastboot flash recovery clockwork.img
    • Прошейте радио, если хотите. В простейшем случае хватит команды fastboot flash radio radio.img
    • Перезагрузитесь в режим рекавери. Иногда в рекавери можно перейти прямо из fastboot. Можно выключить устройство и нажать другую секретную комбинацию кнопок. Но чаще проще перезагрузить устройство в нормальный режим, а затем выполнить adb reboot recovery .
    • Забэкапьте вашу текущую прошивку. Это очень поможет, если вы захотите все вернуть назад.
    • Вайпните cache (всегда), system (если ставите абсолютно новую прошивку, а не обновление имеющейся), data (если хотите удалить понаставленные программы). Заметьте, что вы можете обновить прошивку и оставить все скачанные программы, если не вайпать data . Но тут возможны глюки.
    • Прошейте прошивку. Выберите «Install zip» и укажите zip файл прошивки, который вы заранее скопировали в память устройства.
    • Прошейте gapps, рута и прочее, что хотите. Точно так же выберите «Install zip» и укажите zip файлы в памяти устройства.
    • Перезагрузите устройство. Прямо из рекавери. Первая загрузка будет долгой. Очень долгой. Ведь cache наполняется.
    • Наслаждайтесь новой прошивкой.
    • .
    • ПРОФИТ

UPD 2019: CyanogenMod умер. Да здравствует LineageOS. Ссылки на старые Wiki пришлось переправить на Wayback Machine.

Источник

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