Reboot to Bootloader – что это такое Android. Режим Fastboot Mode на Андроид – что это такое? Как выйти из режима Fastboot

Тебя никогда не интересовало, как работают fastboot или ADB? Или почему смартфон под управлением Android практически невозможно превратить в кирпич? Или, может быть, ты давно хотел узнать, где кроется магия фреймворка Xposed и зачем нужны загрузочные скрипты /system/etc/init.d? А как насчет консоли восстановления (recovery)? Это часть Android или вещь в себе и почему для установки сторонней прошивки обычный рекавери не подходит? Ответы на все эти и многие другие вопросы ты найдешь в данной статье.

Как работает Android

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

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

Шаг первый. ABOOT и таблица разделов

Все начинается с первичного загрузчика. После включения питания система исполняет код загрузчика, записанного в постоянную память устройства. Затем он передает управление загрузчику aboot со встроенной поддержкой протокола fastboot, но производитель мобильного чипа или смартфона/планшета имеет право выбрать и любой другой загрузчик на его вкус. Например, компания Rockchip использует собственный, несовместимый с fastboot загрузчик, для перепрограммирования и управления которым приходится использовать проприетарные инструменты.

Протокол fastboot, в свою очередь, представляет собой систему управления загрузчиком с ПК, которая позволяет выполнять такие действия, как разлочка загрузчика, прошивка нового ядра и recovery, установка прошивки и многие другие. Смысл существования fastboot в том, чтобы иметь возможность восстановить смартфон в начальное состояние в ситуации, когда все остальные средства не работают. Fastboot останется на месте, даже если в результате экспериментов ты сотрешь со смартфона все разделы NAND-памяти, содержащие Android и recovery.

Получив управление, aboot проверяет таблицу разделов и передает управление ядру, прошитому в раздел с именем boot, после чего ядро извлекает в память RAM-образ из того же раздела и начинает загрузку либо Android, либо консоли восстановления. NAND-память в Android-устройствах поделена на шесть условно обязательных разделов:

  • boot - содержит ядро и RAM-диск, обычно имеет размер в районе 16 Мб;
  • recovery - консоль восстановления, состоит из ядра, набора консольных приложений и файла настроек, размер 16 Мб;
  • system - содержит Android, в современных девайсах имеет размер не менее 1 Гб;
  • cache - предназначен для хранения кешированных данных, также используется для сохранения прошивки в ходе OTA-обновления и поэтому имеет размер, сходный с размерами раздела system;
  • userdata - содержит настройки, приложения и данные пользователя, ему отводится все оставшееся пространство NAND-памяти;
  • misc - содержит флаг, определяющий, в каком режиме должна грузиться система: Android или recovery.

Кроме них, также могут существовать и другие разделы, однако общая разметка определяется еще на этапе проектирования смартфона и в случае aboot зашивается в код загрузчика. Это значит, что: 1) таблицу разделов нельзя убить, так как ее всегда можно восстановить с помощью команды fastboot oem format; 2) для изменения таблицы разделов придется разлочить и перепрошить загрузчик с новыми параметрами. Из этого правила, однако, бывают исключения. Например, загрузчик того же Rockchip хранит информацию о разделах в первом блоке NAND-памяти, так что для ее изменения перепрошивка загрузчика не нужна.

Особенно интересен раздел misc. Существует предположение, что изначально он был создан для хранения различных настроек независимо от основной системы, но в данный момент используется только для одной цели: указать загрузчику, из какого раздела нужно грузить систему - boot или recovery. Эту возможность, в частности, использует приложение ROM Manager для автоматической перезагрузки системы в recovery с автоматической же установкой прошивки. На ее же основе построен механизм двойной загрузки Ubuntu Touch, которая прошивает загрузчик Ubuntu в recovery и позволяет управлять тем, какую систему грузить в следующий раз. Стер раздел misc - загружается Android, заполнил данными - загружается recovery… то есть Ubuntu Touch.

Шаг второй. Раздел boot

Если в разделе misc не стоит флаг загрузки в recovery, aboot передает управление коду, расположенному в разделе boot. Это не что иное, как ядро Linux; оно находится в начале раздела, а сразу за ним следует упакованный с помощью архиваторов cpio и gzip образ RAM-диска, содержащий необходимые для работы Android каталоги, систему инициализации init и другие инструменты. Никакой файловой системы на разделе boot нет, ядро и RAM-диск просто следуют друг за другом. Содержимое RAM-диска такое:

  • data - каталог для монтирования одноименного раздела;
  • dev - файлы устройств;
  • proc - сюда монтируется procfs;
  • res - набор изображений для charger (см. ниже);
  • sbin - набор подсобных утилит и демонов (adbd, например);
  • sys - сюда монтируется sysfs;
  • system - каталог для монтирования системного раздела;
  • charger - приложение для отображения процесса зарядки;
  • build.prop - системные настройки;
  • init - система инициализации;
  • init.rc - настройки системы инициализации;
  • ueventd.rc - настройки демона uventd, входящего в состав init.

Это, если можно так выразиться, скелет системы: набор каталогов для подключения файловых систем из разделов NAND-памяти и система инициализации, которая займется всей остальной работой по загрузке системы. Центральный элемент здесь - приложение init и его конфиг init.rc, о которых во всех подробностях я расскажу позже. А пока хочу обратить внимание на файлы charger и ueventd.rc, а также каталоги sbin, proc и sys.

Файл charger - это небольшое приложение, единственная задача которого - вывести на экран значок батареи. Он не имеет никакого отношения к Android и используется тогда, когда устройство подключается к заряднику в выключенном состоянии. В этом случае загрузки Android не происходит, а система просто загружает ядро, подключает RAM-диск и запускает charger. Последний выводит на экран иконку батареи, изображение которой во всех возможных состояниях хранится в обычных PNG-файлах внутри каталога res.

Файл ueventd.rc представляет собой конфиг, определяющий, какие файлы устройств в каталоге sys должны быть созданы на этапе загрузки системы. В основанных на ядре Linux системах доступ к железу осуществляется через специальные файлы внутри каталога dev, а за их создание в Android отвечает демон ueventd, являющийся частью init. В нормальной ситуации он работает в автоматическом режиме, принимая команды на создание файлов от ядра, но некоторые файлы необходимо создавать самостоятельно. Они перечислены в ueventd.rc.

Каталог sbin в стоковом Android обычно не содержит ничего, кроме adbd, то есть демона ADB, который отвечает за отладку системы с ПК. Он запускается на раннем этапе загрузки ОС и позволяет выявить возможные проблемы на этапе инициализации ОС. В кастомных прошивках в этом каталоге можно найти кучу других файлов, например mke2fs, которая может потребоваться, если разделы необходимо переформатировать в ext3/4. Также модеры часто помещают туда BusyBox, с помощью которого можно вызвать сотни Linux-команд.

Каталог proc для Linux стандартен, на следующих этапах загрузки init подключит к нему procfs, виртуальную файловую систему, которая предоставляет доступ к информации обо всех процессах системы. К каталогу sys система подключит sysfs, открывающую доступ к информации о железе и его настройкам. С помощью sysfs можно, например, отправить устройство в сон или изменить используемый алгоритм энергосбережения.

Файл build.prop предназначен для хранения низкоуровневых настроек Android. Позже система обнулит эти настройки и перезапишет их значениями из недоступного пока файла system/build.prop.


Выносы из текста

  • Fastboot останется на месте, даже если в результате экспериментов ты сотрешь со смартфона содержимое всех разделов NAND-памяти
  • Раздел recovery полностью самодостаточен и содержит миниатюрную операционную систему, которая никак не связана с Android
  • Слегка изменив файл fstab, мы можем заставить init загрузить систему с карты памяти

Шаг второй, альтернативный. Раздел recovery

В том случае, если флаг загрузки recovery в разделе misc установлен или пользователь включил смартфон с зажатой клавишей уменьшения громкости, aboot передаст управление коду, расположенному в начале раздела recovery. Как и раздел boot, он содержит ядро и RAM-диск, который распаковывается в память и становится корнем файловой системы. Однако содержимое RAM-диска здесь несколько другое.

В отличие от раздела boot, выступающего в роли переходного звена между разными этапами загрузки ОС, раздел recovery полностью самодостаточен и содержит миниатюрную операционную систему, которая никак не связана с Android. У recovery свое ядро, свой набор приложений (команд) и свой интерфейс, позволяющий пользователю активировать служебные функции.

В стандартном (стоковом) recovery таких функций обычно всего три: установка подписанных ключом производителя смартфона прошивок, вайп и перезагрузка. В модифицированных сторонних recovery, таких как ClockworkMod и TWRP, функций гораздо больше. Они умеют форматировать файловые системы, устанавливать прошивки, подписанные любыми ключами (читай: кастомные), монтировать файловые системы на других разделах (в целях отладки ОС) и включают в себя поддержку скриптов, которая позволяет автоматизировать процесс прошивки и многие другие функции.

С помощью скриптов, например, можно сделать так, чтобы после загрузки recovery автоматически нашел на карте памяти нужные прошивки, установил их и перезагрузился в Android. Эта возможность используется инструментами ROM Manager, auto-flasher, а также механизмом автоматического обновления CyanogenMod и других прошивок.

Кастомные рекавери также поддерживают скрипты бэкапа, располагающиеся в каталоге /system/addon.d/. Перед прошивкой recovery проверяет наличие скриптов и выполняет их перед тем, как произвести прошивку. Благодаря таким скриптам gapps не исчезают после установки новой версии прошивки.

Команды fastboot

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

Fastboot devices

На экран будет выведено имя устройства. Другие доступные команды:

  • fatsboot oem unlock - разлочка загрузчика на нексусах;
  • update файл.zip - установка прошивки;
  • flash boot boot.img - прошивка образа boot-раздела;
  • flash recovery recovery.img - прошивка образа раздела recovery;
  • flash system system.img - прошивка образа системы;
  • oem format - восстановление разрушенной таблицы разделов;

Шаг третий. Инициализация

Итак, получив управление, ядро подключает RAM-диск и по окончании инициализации всех своих подсистем и драйверов запускает процесс init, с которого начинается инициализация Android. Как я уже говорил, у init есть конфигурационный файл init.rc, из которого процесс узнает о том, что конкретно он должен сделать, чтобы поднять систему. В современных смартфонах этот конфиг имеет внушительную длину в несколько сот строк и к тому же снабжен прицепом из нескольких дочерних конфигов, которые подключаются к основному с помощью директивы import. Тем не менее его формат достаточно простой и по сути представляет собой набор команд, разделенных на блоки.

Каждый блок определяет стадию загрузки или, выражаясь языком разработчиков Android, действие. Блоки отделены друг от друга директивой on, за которой следует имя действия, например on early-init или on post-fs. Блок команд будет выполнен только в том случае, если сработает одноименный триггер. По мере загрузки init будет по очереди активировать триггеры early-init, init, early-fs, fs, post-fs, early-boot и boot, запуская таким образом соответствующие блоки команд.


Если конфигурационный файл тянет за собой еще несколько конфигов, перечисленных в начале (а это почти всегда так), то одноименные блоки команд внутри них будут объединены с основным конфигом, так что при срабатывании триггера init выполнит команды из соответствующих блоков всех файлов. Это сделано для удобства формирования конфигурационных файлов для нескольких устройств, когда основной конфиг содержит общие для всех девайсов команды, а специфичные для каждого устройства записываются в отдельные файлы.

Наиболее примечательный из дополнительных конфигов носит имя initrc.имя_устройства.rc, где имя устройства определяется автоматически на основе содержимого системной переменной ro.hardware. Это платформенно-зависимый конфигурационный файл, который содержит блоки команд, специфичные для конкретного устройства. Кроме команд, отвечающих за тюнинг ядра, он также содержит примерно такую команду:

Mount_all ./fstab.имя_устройства

Она означает, что теперь init должен подключить все файловые системы, перечисленные в файле./fstab.имя_устройства, который имеет следующую структуру:

Имя_устройства_(раздела) точка_монтирования файловая_система опции_фс прочие опции

Обычно в нем содержатся инструкции по подключению файловых систем из внутренних NAND-разделов к каталогам /system (ОС), /data (настройки приложений) и /cache (кешированные данные). Однако слегка изменив этот файл, мы можем заставить init загрузить систему с карты памяти. Для этого достаточно разбить карту памяти на три 4 раздела: 1 Гб / ext4, 2 Гб / ext4, 1 Гб / ext4 и оставшееся пространство fat32. Далее необходимо определить имена разделов карты памяти в каталоге /dev (для разных устройств они отличаются) и заменить ими оригинальные имена устройств в файле fstab.


В конце блока boot init, скорее всего, встретит команду class_start default, которая сообщит, что далее следует запустить все перечисленные в конфиге службы, имеющие отношение к классу default. Описание служб начинается с директивы service, за которой следует имя службы и команда, которая должна быть выполнена для ее запуска. В отличие от команд, перечисленных в блоках, службы должны работать все время, поэтому на протяжении всей жизни смартфона init будет висеть в фоне и следить за этим.

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

Команды init.rc

Процесс init имеет встроенный набор команд, многие из которых повторяют стандартный набор команд Linux. Наиболее примечательные из них:

  • exec /путь/до/команды - запустить внешнюю команду;
  • ifup интерфейс - поднять сетевой интерфейс;
  • class_start имя_класса - запустить службы, относящиеся к указанному классу;
  • class_stop имя_класса - остановить службы;
  • insmod /путь/до/модуля - загрузить модуль ядра;
  • mount ФС устройство каталог - подключить файловую систему;
  • setprop имя значение - установить системную переменную;
  • start имя_службы - запустить указанную службу;
  • trigger имя - включить триггер (выполнить указанный блок команд);
  • write /путь/до/файла строка - записать строку в файл.

Шаг четвертый. Zygote и app_process

На определенном этапе загрузки init встретит в конце конфига примерно такой блок:

Service zygote /system/bin/app_process -Xzygote /system/bin --zygote --start-system-server class default socket zygote stream 660 root system onrestart write /sys/android_power/request_state wake onrestart write /sys/power/state on onrestart restart media onrestart restart netd

Это описание службы Zygote, ключевого компонента любой Android-системы, который ответственен за инициализацию, старт системных служб, запуск и остановку пользовательских приложений и многие другие задачи. Zygote запускается с помощью небольшого приложения /system/bin/app_process, что очень хорошо видно на приведенном выше куске конфига. Задача app_proccess - запустить виртуальную машину Dalvik, код которой располагается в разделяемой библиотеке /system/lib/libandroid_runtime.so, а затем поверх нее запустить Zygote.

Когда все это будет сделано и Zygote получит управление, он начинает формирование среды исполнения Java-приложений с помощью загрузки всех Java-классов фреймворка (сейчас их более 2000). Затем он запускает system_server, включающий в себя большинство высокоуровневых (написанных на Java) системных сервисов, в том числе Window Manager, Status Bar, Package Manager и, что самое важное, Activity Manager, который в будущем будет ответственен за получение сигналов о старте и завершении приложений.

После этого Zygote открывает сокет /dev/socket/zygote и уходит в сон, ожидая данные. В это время запущенный ранее Activity Manager посылает широковещательный интент Intent.CATEGORY_HOME, чтобы найти приложение, отвечающее за формирование рабочего стола, и отдает его имя Zygote через сокет. Последний, в свою очередь, форкается и запускает приложение поверх виртуальной машины. Вуаля, у нас на экране появляется рабочий стол, найденный Activity Manager и запущенный Zygote, и статусная строка, запущенная system_server в рамках службы Status Bar. После тапа по иконке рабочий стол пошлет интент с именем этого приложения, его примет Activity Manager и передаст команду на старт приложения демону Zygote

INFO

В терминологии Linux RAM-диск - это своего рода виртуальный жесткий диск, существующий только в оперативной памяти. На раннем этапе загрузки ядро извлекает содержимое диска из образа и подключает его как корневую файловую систему (rootfs).

В процессе загрузки Android отображает три разных загрузочных экрана: первый появляется сразу после нажатия кнопки питания и прошит в ядро Linux, второй отображается на ранних этапах инициализации и записан в файл /initlogo.rle (сегодня почти не используется), последний запускается с помощью приложения bootanimation и содержится в файле /system/media/bootanimation.zip.

Кроме стандартных триггеров, init позволяет определять собственные триггеры, которые могут срабатывать от самых разных событий: подключения устройства к USB, изменения состояния смартфона или изменения состояния системных переменных.

Кроме всего прочего, Activity Manager также занимается убийством фоновых приложений при нехватке памяти. Значения порогов свободной памяти содержатся в файле /sys/module/lowmemorykiller/parameters/minfree.

Все это может выглядеть несколько непонятно, но самое главное - запомнить три простые вещи:

Во многом Android сильно отличается от других ОС, и с наскоку в нем не разобраться. Однако, если понять, как все работает, открываются просто безграничные возможности. В отличие от iOS и Windows Phone, операционка от гугла имеет очень гибкую архитектуру, которая позволяет серьезно менять ее поведение без необходимости писать код. В большинстве случаев достаточно подправить нужные конфиги и скрипты.

Далеко не каждый обладатель мобильного девайса в виде смартфона или планшета, работающего под управлением «операцонки» серии Android , знает о том, что в любой версии ОС имеется такая штука, как Bootloader . Что это такое, сейчас и будет рассмотрено. Исходя из понимания самой сути вопроса, можно будет узнать, какие операции можно производить при его разблокировании.

Bootloader: что это?

Начнем, так сказать, с азов. Bootloader Android - систем практически ничем не отличается от того, что имеется на любом компьютерном терминале, будь то PC или Mac. Говоря простым языком, Bootloader – это встроенное средство загрузки операционной системы.

Если привести в пример компьютерные терминалы с несколькими установленными «операционками» (скажем, Windows и Linux), загрузчик после включения стационарного блока или ноутбука предлагает юзеру вход в систему на выбор, а после подтверждения загружает ту или иную ОС.

Принципы загрузки ОС

Равно как и в стационарных системах, загрузчик Bootloader в мобильных девайсах обращается к инициализационным файлам по типу того, как это делает, например, Windows при загрузке параметров из файла boot.ini.

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

Bootloader: как разблокировать и зачем это нужно?

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

Считается, что в таком случае пользователь получает доступ к ядру системы, который по умолчанию невозможен. Как в такой ситуации описать Bootloader? Что это, станет понятно, если взглянуть на отсутствие так называемых прав суперюзера . Получается, что после снятия блокировки они вообще не нужны ни на каком уровне. А то ведь зачастую приходится устанавливать специальные прошивки и приложения. Если же кастомная прошивка , мягко говоря, «корявая», то и вся система может слететь.

Любой производитель мобильной техники предусматривает работу с таким компонентом, как Bootloader. Как разблокировать его? Обычно это делается при помощи специальных утилит, устанавливаемых на ПК при соединении с мобильным девайсом через USB-интерфейс. Заметьте, права суперпользователя в данном случае не требуются.

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

Как разблокировать Bootloader более подробно

  • Как разблокировать загрузчик (Bootloader) - HTC
  • Как разблокировать загрузчик (Bootloader) - Nexus
  • Как разблокировать загрузчик (Bootloader) - Sony
  • Как разблокировать загрузчик (Bootloader) - Xiaomi
  • Как разблокировать загрузчик (Bootloader) - Huawei
  • Как разблокировать загрузчик (Bootloader) - LG

Восстановление данных

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

Достаточно просто скинуть настройки на самом гаджете, а после перезагрузки система предложит выбрать вариант: либо использовать на устройстве новые настройки, либо восстановить параметры, программы и файлы, применяя для этого учетную запись сервисов Google. При этом придется ввести адрес почты Gmail с паролем, а также подключиться к сети Интернет, например, при имеющемся активном Wi-Fi-соединении.

Установка другой «операционки»

Если говорить о возможности инсталляции другой ОС, этот вопрос достаточно сложен, хотя и решаем. Дело в том, что некоторые производители утверждают, мол, что после «Андроида» на гаджет другая система не станет. Чистой воды рекламный ход, призванный разрекламировать инсталлированную систему.

А ведь китайцы на своих «левых» аппаратах HTC уже доказали, что на одном девайсе совершенно элементарно уживаются и Android, и Windows Phone. При этом такие модели поставляются в большинстве случаев с уже разблокированным загрузчиком Bootloader. Что это в данном случае? Это средство, позволяющее не только выбирать загружаемую ОС, но и устанавливать любую другую с изменением параметров на системном уровне.

Иными словами, пользователь может обойтись даже без каких бы то ни было прошивок или дополнительных программ для оптимизации работы установленной «операционки». Более того! Для этого не потребуются даже специализированные утилиты вроде оптимизаторов, которых сегодня развелось столько, что пользователь сам не понимает, что же выбрать из всего этого огромного количества программ и приложений.

На что стоит обратить внимание отдельно?

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

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

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

Напоследок остается добавить, что вопрос установки другой ОС на Android-девайс – тоже, в общем-то, достаточно спорный. Да, конечно, система встанет, что бы там производитель ни заявлял. Но вот как она будет работать – это уже другой вопрос, тем более что большинство юзеров обычно ставят какие-то облегченные версии, имеющие неизвестный источник происхождения. А зря. Тут, как говорится, таких дров наломать можно, что потом греха не оберешься. Да и сам производитель при таких изменениях по действующим международным нормам никакой ответственности за корректную работу мобильного девайса не несет. Поэтому решение о целесообразности и должен принимать сам обладатель гаджета. Но лучше с такими вещами не шутить.

Чтобы иметь возможность осуществлять тонкую настройку параметров ОС и железа, пользователи мобильных устройств под управлением Android иногда рутируют свои гаджеты, а также вносят изменения в . Но это не все доступные способы получения расширенного доступа к настройкам аппарата и системы. Заглянуть под «капот» устройства можно, воспользовавшись режимом под названием Fastboot Mode.

Что такое Fastboot Mode

Что же значит Fastboot Mode (быстрая загрузка) и какое отношение он имеет к тонкой настройке? В некоторых моделях ноутбуков он действительно служит для максимального ускорения загрузки системы в обход BIOS и отладки приложений, в мобильных устройствах его предназначение несколько иное. На смартфонах и планшетах Android этот режим необходим прежде всего для обеспечения доступа к системным компонентам устройства и управления ими с помощью компьютера.

Используя возможности Fastboot Mode, специалисты сервисных центров и опытные пользователи могут устанавливать программное обеспечение, производить перепрошивку гаджета, восстанавливать приложения, выполнять резервное копирование и восстановление, изменять скрытые системные настройки. К «быстрой загрузке» нередко прибегают и разработчики, используя ее для тестирования ПО и других целей.

Разъяснив предназначение режима, мы, кажется, так и не дали ответ на вопрос, что такое Fastboot Mode по сути. Так вот, фастбут в Андроид – это отдельный, независимый от операционной системы программный компонент, реализованный на аппаратном уровне и прописанный в чипе памяти. Именно эта независимость позволяет загружать устройство даже при возникновении серьезных неполадок с операционной системой. Программный код Fastboot Mode располагается в области памяти, защищённой от чтения и записи, что исключает его повреждение.

В каких случаях активируется Fastboot Mode

Среда Фастбут может быть запущена вручную через стандартное меню либо посредством одновременного зажатия на выключенном устройстве кнопки включения и клавиши уменьшения/увеличения громкости. Но в некоторых случаях режим запускается самостоятельно, и это не очень хороший момент. Причинами самопроизвольной загрузки могут стать неудачная перепрошивка, замена штатной среды восстановления модифицированной, получение прав суперпользователя, системный сбой и повреждение файлов ОС Андроид.

Как выйти из режима Fastboot

О включении режима свидетельствует изображение вскрытого робота и надпись на экране телефона Fastboot Mode.

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

Есть два основных способа это сделать: через сам телефон и с помощью компьютера. Если обычная перезагрузка не помогает, выключите устройство, а затем одновременно зажмите клавиши включения и понижения громкости, удерживая их до тех пор (примерно 10 секунд), пока на экране не появится меню Sеlect Boot Mode либо телефон не загрузится в нормальном режиме. В этом меню выберите опцию Normal Boot и дождитесь загрузки гаджета в обычном режиме.

В некоторых случаях выйти из режима отладки помогает извлечение аккумулятора, если он, конечно, съёмный.

Иногда пользователям приходится сталкиваться с загрузкой в режиме фастбут после того, как они забрали гаджет из сервисного центра. Так обычно происходит после . Вероятная причина – оставленная включённой функция фастбут-режима в настройках. Если это тот самый случай, то для отключения Fasboot Mode зайдите в настройки, а потом в разделе «Экран» или «Специальные возможности» найдите пункт «Быстрая загрузка» и снимите с него галочку.

Как выйти из режима Fastboot Mode с помощью компьютера? Установите на ПК приложения , подключите телефон к компьютеру, активируйте отладку по USB, запустите от имени администратора командную строку и выполните команду fastboot reboot . Это простой, но весьма эффективный способ отключения фастбут.

Если и он не решит проблему, выполните сброс устройства к заводским параметрам. Скопировав все важные данные, извлеките из телефона симку и карту памяти, загрузитесь в режиме Recovery, найдите в меню опцию wipе dаta/fаctоry rеset и произведите с её помощью откат.

Дополнительно можно очистить содержимое хранилища, выбрав опцию wipе cаche pаrtition .

Как перевести телефон в режим Fastboot Mode

Fastboot Mode – служебный режим, прибегать к которому приходится чаще всего при необходимости изменить конфигурацию устройства через ПК, например, установить модифицированную прошивку либо получить права root без использования сторонних программ. Загрузка в фастмоде также может понадобиться для предоставления полного доступа к системным папкам Android и восстановления ОС (в качестве альтернативы инструментам режима Recovery).

Способ входа в режим Fastboot Mode на разных устройствах может отличаться. В смартфонах Asus для этого нужно держать зажатыми кнопки включения и увеличения громкости, в Nexus и HTC – кнопки включения и уменьшения громкости, в Sony режим фастбут загрузится, если зажать увеличение громкости и подключить гаджет к ПК по USB.

Но есть и универсальный способ загрузки в фастбут, одинаково работающий на всех мобильных устройствах Android. Скачайте и установите на компьютер программу Adb Run . Далее включите в настройках телефона отладку по USB, подключите устройство к ПК и, запустив Adb Run, выберите в меню Reboot – Reboot Bootloader .

Гаджет перезагрузится в режиме Fastboot.

Выбор редакции

Fastboot Mode в Android: проводим [манипуляции с гаджетом] на системном уровне

Иногда пользователи телефонов или планшетов на базе Android сталкиваются с режимом Fastboot Mode, абсолютно не понимая, что это такое?

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

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

Впоследствии из-за этого придется обращаться в сервис, тратить свое время и средства. А ведь этого можно легко избежать, если разобраться в проблеме без лишней спешки.

Ниже можно подробно ознакомиться с тем, что это такое из-за чего возникает процесс и как действовать при его появлении.

Cодержание:

Что это такое

В операционной системе Android он предоставляет полный доступ к смартфону или планшету для управления им через компьютер. Такой подход позволяет :

  • устанавливать приложения;
  • настраивать различные параметры;
  • делать перепрошивку гаджета;
  • распределять права доступа.

Fastboot не является частью одной определенной ОС, но его часто можно встретить в среде Android SDK, ведь без него не получится полноценным образом наладить связь между ПК и гаджетом.

В данном случае имеется ввиду непросто передача данных, а именно настройка устройства.

Стоит отметить, что он запускается раньше, чем сама операционная система. Это говорит о том, что режимом можно воспользоваться даже тогда, когда на Ваш гаджет еще не установлен.

Почему возникает

Наличие такого режима очень полезно, но что делать, когда у Вас нет необходимости настраивать таким образом свой смартфон, а окно внезапно появилось?

Причины его появления могут быть разными :

  • ошибка при прошивке гаджета;
  • случайное нажатие клавиш – включения смартфона и повышения громкости одновременно;
  • получение прав root-пользователя;
  • системный сбой.

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

Для начала, при возникновении Fastboot следует проверить, доступен ли .

Действующими являются кнопки увеличения и уменьшения громкости – первой мы листаем пункты, что высвечены на экране, а второй делаем выбор (как клавишей Enter на ПК).

Таким образом, доходим до надписи «NormalBoot» и выбираем ее кнопкой уменьшения громкости.

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

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

Это связано с тем, что в сервисном центре наверняка не отключили эту функцию. Справиться с этим можно и самостоятельно :

  • после нормальной загрузки гаджета зайдите в его «Настройки» ;
  • далее следует выбрать вкладку «Экран» ;
  • отыскав в ней пункт , снимите с него галочку.

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

Что делать при системном сбое

Если переход в «Normal Boot» заблокирован или, еще хуже, на экране видно лишь одну надпись «Fastboot Mode» и сводка параметров отсутствует, то по какой-то причине система гаджета дала сбой и есть два варианта того, как все исправить.

Вариант 1

Всегда можно попробовать восстановить систему и вновь вернуть смартфон в рабочее состояние.

Важно! При восстановлении происходит форматирование всех данных, что хранятся на смартфоне, поэтому лучше обезопасить себя и предварительно вынуть карту памяти.

Для начала необходимо зажать кнопку включения и повышения громкости одновременно. В появившемся меню отыскать пункт – wipe data/factory reset .

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

Гаджет перезагрузится, и Вы вновь сможете использовать его в своих целях.

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

Вариант 2

Прибегать к этому варианту стоит в самую последнюю очередь, когда ни один из вышеописанных способов точно не работает.

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

  • снять батарею;
  • вставить ее обратно;
  • зажать кнопку включения минимум на 30 секунд.

Вновь вернувшийся Fastboot Mode даст понять, что пора переходить к более кардинальным действиям.

Придется перезагрузить устройство, но уже через компьютер, .

Обратите внимание! Для работы со смартфоном, у которого случился системный сбой, Вам понадобятся подходящие драйвера.

Не так уж и сложно.

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

1 Разархивируем скаченные «дрова»;

2 Данные из архива помещаем в папку ;

3 После подключаем гаджет к ПК посредством USB-кабеля;

4 Некоторое время придется потратить на ожидание, пока компьютер распознает смартфон , после чего он предложит для начала работы с гаджетом установить драйвера;

5 Так как мы их уже предварительно скачали, то выбираем пункт «Установка из указанного места» ;

6 Выбираем папку, в которую поместили их и нажимаем Enter .

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

  • заходим в меню «Пуск» ;
  • в строке выполнения прописываем «cmd» ;

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

Как войти в настройки

При возникновении такой потребности все будет зависеть исключительно от модели смартфона, которым Вы пользуетесь.

Но, не смотря на это, понадобится компьютер и . Обязательно перед началом следует выключить гаджет.

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

Необходимо прошить Android c помощью FastBoot, но не знаете как? В данной статье дается детальная инструкция по использованию утилиты FastBoot и как ей пользоваться чтобы прошить Android девайс.

Данная инструкция полностью расскажет как пользоваться FastBoot! Если же вы не знаете как устанавливать архивные обновления то вам необходима статья - Clockwordmod - что это такое. Инструкция по CWM recovery с картинками

Скачивание и установка FastBoot

Прежде прошить Android c помощью FastBoot, необходимо его скачать и установить на необходимый компьютер.

1. Скачать утилиту FastBoot можно с официальной программой Android SDK (большой вес)

почему ADB RUN лучше

Запуск

Если скачали Отдельно Fastboot

После того как Вы скачали и установили FastBoot, откройте на ПК программу «Командная строка »

и введите команды для перехода в папку с утилитой Fastboot (если установили отдельно FastBoot )

cd /
cd adb

Если скачали ADB RUN

Если ваш выбор пал на программу ADB RUN, то запустите ее и выберите в меню Manual -> ADB

Файлы которые необходимо прошить должны находится в одной папке с утилитой Fastboot

Инструкция по командам как прошить Android c помощью FastBoot

Очень важно писать команды и файлы прошивок так как они указаны!

Если у вас команда указана

fastboot flash cache NazvaniAFiLe.img

то нужно писать именно так, но ни как иначе. Другими словами важен регистр букв иначе вы получите ошибку cannot load ‘image’ - нет такого файла.

Команды перезагрузки в режим прошивки (bootloader)

fastboot reboot-bootloader

Команда «видит» ли ПК ваш Android

Возьмите в привычку проверять перед тем как что-то делать в Fastboot если соединение между компьютером и Android:

Проверка «видит ли» ПК ваш Android

fastboot devices

Данную команду выполнять когда устройство уже в режиме прошивке (bootloader)

Команды разблокировки и блокировки загрузчика Nexus

Разлочить bootloader для Nexus

fastboot oem unlock

Залочить bootloader для Nexus

fastboot oem lock

Команда узнать версию bootloader

Покажет установленую на Android номер версии бутлоадер

fastboot getvar version-bootloader

Команды форматирования раздела

Перед тем как прошить какой либо раздел в Android, вначале его необходимо отформатировать для того чтобы не возникло проблем в работе

fastboot erase Imya_razdela - стереть раздел: boot, radio, recovery, system, userdata и другие

Стирает раздел Кеш (Cache)

fastboot erase cache

Стирает раздел Дата (Data)

fastboot erase userdata

Стирает раздел Систем (System)

fastboot erase system

Стирает раздел Recovery

fastboot erase recovery

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

После того как выполнили форматирование раздела или разделов, можете приступить к прошивке

fastboot flash Imya_razdela imya_file.img - прошивка выбранного раздела: boot, radio, recovery, system, userdata и другие

Прошить раздел системы (System)

fastboot flash system imya.img

Прошить раздел кеш (Cache)

fastboot flash cache imya.img

Прошить раздел дата (Data)

fastboot flash userdata imya.img

Прошить раздел Recovery

fastboot flash recovery imya.img

Установка анимации включения (прошивка раздела с анимацией)

fastboot flash splash1 splash.img

Прошить все разделы (boot, recovery и system)

fastboot flashall

Вместо imya.img - необходимо прописывать имя файла которые вы собираетесь прошить

Команда для установки update.zip

Прошивает на Android архив-обновление в формате update.zip или архив ZIP с IMG образами различных разделов

fastboot update имя_файла.zip

Для устройств Sony

Проверка подключения устройства Sony, если ответ 0.3 устройство, то тогда подключено

fastboot.exe -i 0x0fce getvar version

Разблокировка bootloader

fastboot.exe -i 0x0fce oem unlock 0xПолученый_Ключ

Более детальная информация по разблокировке Bootloader Sony - Как разблокировать Bootloader Sony

Ошибка Waiting for Device

Если у вас долгое время в командном окне горит надпись waiting for device - значит:

  • Не установлен или некорректно установлен драйвер - переустановить или установить
  • Устройство Android не в режиме Bootloader - перевести
  • Некорректное подключение к USB порту - использовать задние порты USB 2.0 компьютера, не использовать USB хабы

Поделиться