Normal Boot что это такое на Андроид. Прошивка Андроид с помощью утилиты FastBoot Установка другой «операционки»

В процессе пользования мобильным устройством на базе ОС Android (а особенно после неудачной перепрошивки аппарата) пользователь может столкнуться с внезапной перезагрузкой своего гаджета. После перезагрузки на экране смартфона может появиться меню, предлагающее выбрать режим загрузки устройства («Select boot mode»), и одним из таких режимов, наряду с «Recovery Mode» и «Fastboot mode», является режим «Normal boot». В данном материале я расскажу, что такое Normal Boot на Android, в чём его особенности, а также поясню разницу между Normal Boot и другими режимами загрузки вашего гаджета.

«Normal Boot» – это стандартный режим загрузки вашего мобильного устройства. Обычно этот режим загрузки выбирается устройством автоматически при условии отсутствия ошибок (ранних или настоящих) в работе системы. Происходит считка данных загрузчика (bootloader), затем производится загрузка ядра операционной системы (kernel), включающего полный набор драйверов и подсистем управления памятью, безопасностью, сетью. В числе инструментов «kernel» также входит «ramdisk» — программный инструмент, предназначенный для инициализации разделов файловой системы. Файловая система монтируется, запускаются необходимые системные службы, и, в конечном счёте, пользователь видит окно рабочего стола своего гаджета.


Если ваше устройство внезапно перезагрузилось, а затем предложило вам выбрать варианты загрузки «normal boot» – «fast boot» – «recovery mode», тогда это может сигнализировать о наличии программных или аппаратных проблем в работе устройства. Нажимая кнопку «громкость вверх», выберите режим «normal boot», а затем нажмите на кнопку «громкость вниз» для загрузки вашего гаджета в нормальном режиме.


Выбираем режим «Normal Boot»

Fast boot , Normal Boot и Recovery Mode

Наряду с «Normal Boot» (что это такое Normal Boot мы уже разобрались) система может предложить для загрузки режим, называемый «Fast boot» (быстрая загрузка). Режим «Fastboot» не является частью ОС Android, а скорее является важным элементом загрузчика конкретного мобильного устройства (некоторые устройства вообще не поддерживают Fastboot). Указанный режим предназначен для перепрошивки устройства, позволяя перепрошить как всю память устройства, так и её отдельные разделы.

Также на многих устройства наряду с «Normal boot» и «Fast boot» доступен выбор режима восстановления («Recovery Mode»). Данный режим предназначен для стабилизации нормальной работы устройства, позволяя выполнить сброс к заводским настройкам, а также для установки важных системных обновлений.


Заключение

Режим «Normal Boot» используется вашим гаджетом для стандартной загрузки структурных компонентов операционной системы. Обычно подобный режим выбирается системой автоматически, если до этого система не встретилась с различными ошибками в своей работе. Если ваш гаджет внезапно перезагрузился, а затем на экране появился режим выбора «normal boot» или «fast boot» — кнопкой «громкость вверх» выберите режим «normal boot», и, нажав на «громкость вниз», выберите стандартный алгоритм загрузки вашего гаджета.

Тебя никогда не интересовало, как работают 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 иногда рутируют свои гаджеты, а также вносят изменения в . Но это не все доступные способы получения расширенного доступа к настройкам аппарата и системы. Заглянуть под «капот» устройства можно, воспользовавшись режимом под названием 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.

Friday, July 7, 2017

We sometimes may need to put our Android into Recovery mode for some tasks. For instance, so that you are allowed to deeply customize your smartphone such as installing new custom ROMs, updating Android system, resetting your phone, etc.

People also read:
So, how to get into Android recovery mode? For new Android users, it may be a troublesome problem facing them. Don"t panic, here we provide an easy guide showing you how to make it without any difficulty.

Part 1. Boot into Recovery Mode on your Android Device

Getting into Recovery Mode on Android smartphones from different brands might be slightly different. In the following article, we will take several popular brands of Android devices and show you how to enter the Recovery Mode in detail.

Section 1 Boot Samsung Galaxy into Recovery Mode

A For Galaxy S8/S7/S6/S5 or other Samsung devices, you should firstly turn the phone off by holding down the Power key and select "Power off " option.

Then keep pressing and holding Power Key , Volume+ and Home button at the same time until you see the Samsung logo. Now, you can select the recovery mode option by using the Volume keys to highlight and the Power key to confirm.

Section 2 Get into Recovery Mode on LG

For the LG G6, G5, G4, V10, V20 and other LG phones, you can get it into recovery mode by following the guide below:

1. To start with, get your LG power off.
2. Press and hold the Power key and Volume- button simultaneously.
3. When the LG logo appears, release the keys. Then, immediately press the Power and Volume- button again until the Hard Reset menu displays.
4. Once the menu showed, use Volume keys to highlight an option and press Power button to confirm hard reset. Now, your LG is in the Recovery Mode.

Section 3 Enter Recovery Mode on HTC

1. Go to "Settings > Battery" on your HTC and uncheck the option that says FASTBOOT.
2. Power off the smartphone and wait for about 5 seconds until it completely switches off.
3. Then, press and hold Volume- button and press the Power key.
4. When you can see the new menu appears on the screen, release the keys. Use the Volume down button to navigate to the options in Bootloader Mode, and confirm "Recovery" option with Power button. In this way, you can get into Recovery Mode.

Section 4 Enter Recovery Mode on Google Nexus

1. If your smartphone is on, turn it off.
2. Press and hold the Volume- and Power key buttons, and you"ll see the word "Start" at the top of the screen.
3. Press the Volume- button twice to highlight "Recovery". Press the Power button to start Recovery mode.
4. The white Google logo will pop up. Please continue to press and hold the Power key and the Volume up key for around three seconds, and then let go of the Volume up key, but keep pressing Power.
5. Use the Volume keys to highlight the options and the Power key to select the one you want.

Note : Different Android devices have different key combines to enter bootloader or fastboot mode. Generally, holding "Volume down" key/"Volume up" key and "Power" key together works for most Android phones. If it doesn"t help, you may need to search for other methods in Google.

Step 1 Launch this program on the computer and run it. Select "Broken Android Data Extraction" option in the left column. Then, connect your phone to computer via the USB cable to move on.

Step 2 Confirm the situation and please click on the "Start" button on the interface. Now you need to choose device name and model of your phone.

Note: If you have no ideas where to find the device name and model and you are not allowed to access your phone for the info, you can open the battery to view the model.

Step 3 As the computer can successfully recognize the device, the program would help you analyze your cellphone and recover the device with recovery package until it goes to the end.

Step 4 You are permitted to check the scanned results one by one and select some files to recover if you press "Recover" button and save them in certain folder. After that, this program would offer hands to exit this mode practically.

Hope this helps you in booting your Android device into recovery mode . You will find it is pretty convenient to back up or reset your system in this way. Surely, if you still have some problems in doing this, please send us emails or comment in the box below. We appreciate your suggestions as well.