команды fastboot

Команды Fastboot для Прошивки


Android Debug Bridge. Часть 3: Команды fastboot

В третьей по счёту публикации в нашем цикле по Android Debug Bridge мы попытаемся разобраться с утилитой fastboot. Fastboot – это приложение для личного компьютера, работающее через консоль. Эта утилита применяется для firmware файловой системы Android-девайсов.

Отметим, что об общей информации относительно Android Debug Bridge, а еще о командах, которые поддерживаются ADB, мы уже рассказывали в предыдущих статьях этого цикла.

С помощью fastboot можно прошивать на Android-устройство неподписанные образы. В большинстве случаев эта функция отключена в мобильных аппаратах «из коробки», поскольку в загрузчике отключена поддержка USB. Благодаря этому для настоящего применения всех предназначений fastboot нужен инженерный SPL, либо же SPL с отключенной проверкой безопасности (Security flag off, легче – S-OFF).

SPL считается вторым программным загрузчиком, и в комбинировании с IPL составляет общий загрузчик Android-девайса. Кроме, собственно, самой первой загрузки ОС Android, загрузчик также исполняет проверку системы. Одна из диагностических предназначений состоит в управлении данными, которые находятся на внутреннем флэш-накопителе устройства. В зависимости от поставленного SPL-загрузчика, клиент может без посторонней помощи прошить на гаджет подписанные NBH-файлы, образы NAND флэш-памяти и так дальше. SPL поставлен и не прекращает работу, независимо от ОС Android, которая поставлена и не прекращает работу на него. IPL же – это программа начальной загрузки устройства, другими словами начальной инициализации и загрузки всего оборудования «на борту», ориентировочно как BIOS на компьютерах.

Для того, чтобы проверить, доступен ли режим fastboot, необходимо перезагрузить Android-устройство через ADB командой adbrebootbootloader. В верхней строке должно быть отображено «S-OFF», это означает, что «Проверка безопасности выключена». Если же отображается «S-ON», либо же фон с четырьмя цветами радуги, значит данный SPL не имеет поддержки fastboot. Придется установить fastboot, который совместим с SPL.

Важно: при подсоединении мобильного Android-аппарата в режиме бутлоадера (bootloader) нужно еще раз установить драйвера Android 1.0 (собственно так, почему-то, идет отображение в «Диспетчере устройств»). Установка драйверов аналогичная, как в большинстве случаев, только во время установки самого драйвера необходимо подобрать строчку не ADB, а FASTBOOT.

Сейчас приступаем к разбору, собственно, команд, которые можно сделать в режиме fastboot.

Отображает перечень всех присоединенных в режиме fastboot устройств.

Загружает подобранный .img-файл в конкретный раздел Android-девайса с личного компьютера, и проводит его установку. Например:

fastboot flash splash1 splash.img

Создает прошивку загрузочного Splash-экрана.

Полностью убирает (стирает) указанный раздел. Доступные разделы: boot, radio, recovery, userdata, system

Создает прошивку подключенного Android-девайса из установленного .zip-файла.

Создает прошивку разделов boot, recovery и system.

Отображает значение указанной переменной bootloader. К примеру:

fastboot getvar version-bootloader

Будет отображена версия бутлоадера.

Создает скачку и загрузку установленного Kernel.

fastboot flash:raw boot [ ]

Создает создание bootimage и его прошивку.

Создает перезагрузку подключенного Android-устройства.

Создает перезагрузку подключенного Android-устройства в режиме загрузчика (bootloader).

Команды fastboot также поддерживают следующие ключи:

-w – убирание пользовательских данных и кэша.

-s – установка серийного номера устройства.

– установка названия подключенного гаджета.

-c – переопределение Kernel commandline.

i – установка ручным способом USB VID.

-b – указание ручным способом базисного адреса Kernel.

– установка ручным способом размера страниц NAND. Значение по умолчанию равно 2048.

Вот мы и разобрались с командами fastboot в Android Debug Bridge. В следующей, последней публикации этого цикла мы попытаемся разобраться с разными полезными скриптами, которые можно создавать с применением ADB.

Что такое fastboot и как с ним работать

Помимо ADB в наборе Android SDK есть второй не меньше практичный инструмент, вышеназванный fastboot. Это более низкоуровневый инструмент, благодаря которому на смартфон можно поставить новую прошивку, ядро, загрузчик, стереть все данные или, к примеру, загрузить консоль восстановления (recovery) не устанавливая ее на смартфон.

Как и ADB fastboot состоит из 2-ух элементов: сервера, работающего на смартфоне и обычного консольного клиента, который можно запустить на ПК для управления сервером (смартфоном). Отличие же от ADB состоит в том, что fastboot это совсем не часть Android, а часть загрузчика смартфона/планшетного компьютера и предназначается он для управления самим загрузчиком. В особенности, при помощи fastboot можно заставить смартфон загрузить то или иное ядро, recovery или прошить новую версию Android.

К несчастью fastboot поддерживается далеко не каждым смартфоном или планшетным компьютером. Во многих устройствах он просто отключен, в остальных заблокирован и для его активации нужно разлочить загрузчик (Samsung). Гарантированно управление при помощи fastboot доступно только в Nexus-устройствах, производства самой Гугл: Nexus 5, Nexus 4, Galaxy Nexus, Nexus 7, Nexus 10.

Как я уже сказал fastboot поставляется в наборе с Android SDK (каталог platform-tools) и собой представляет обычную консольную программу, которую следует запускать в режиме DOS в Windows, или через эмулятор терминала в Linux. Персонально я настойчиво советую применять для всех действий над смартфоном собственно Linux, так как в нем не нужно ставить драйвера для смартфона, а инструменты которые понадобятся можно установить отдельно от SDK.

Так, к примеру, для установки fastboot в Ubuntu нужно только выполнить в терминале такую команду:

То же самое в Fedora Linux:

Дальше необходимо только подключить смартфон к ПК при помощи USB-кабеля и перезагрузить его в режим загрузчика разным способом. К примеру, при помощи adb:

Fastboot и его команды

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

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

Комментариев нет, будьте первым кто его оставит

Вам нужно войти, чтобы оставить комментарий.