Я знаю, что для разных устройств конкретные процедуры разные, но я думаю, что есть принципиальные сходства в процедурах.
Итак, каковы основные шаги для рутирования вашего телефона? Что на самом деле происходит за кулисами, когда кто-то следует любому из доступных руководств по рутированию?
Что за волшебство дает вам root-права на вашем телефоне? Как впоследствии обрабатываются привилегии пользователя?
Процесс состоит из нескольких частей:
Разблокировка или обход любой защиты загрузчика, позволяющая записать системный раздел
Установка соответствующих двоичных файлов для получения root.
Оба эти этапа могут варьироваться от телефона к телефону, но вот несколько примеров:
Разблокировка загрузчика
На многих OEM-телефонах это традиционно предполагает использование уязвимости в части системы для перезаписи определенных разделов. Иногда это будет означать прошивку нового загрузчика, нового рекавери (это становится распространенным явлением) или временную загрузку с образа через USB, чтобы получить доступ для восстановления к системному разделу.
На линейке телефонов Nexus и телефонах для разработки, выпущенных Google, это так же просто, как запустить «разблокировку fastboot oem», хотя это сотрет телефон. Кроме того, поддавшись давлению со стороны сообщества разработчиков, многие производители теперь предлагают официальный способ разблокировки загрузчика.
Установка корневых бинарников.
После того, как системный раздел был взломан, все остальное довольно просто. По сути, это означает установку двоичного файла «su» (это повышает права суперпользователя) и apk, который предоставляет внешний интерфейс Android для «su» и запрашивает у пользователя, когда приложение запрашивает разрешение root.
Существует несколько подходов ко второму этапу. Наиболее распространенным было использование предварительно рутированного ПЗУ, предоставленного сообществом. Часто есть выбор: от стандартного ПЗУ, предоставленного производителем, а затем переработанного для добавления двоичных файлов, до целого ряда ПЗУ AOSP (Android Open Source Project), таких как CyanogenMod (тот, в котором я участвовал).
Есть еще какие-то методы. Например, некоторые телефоны (например, Galaxy Nexus) могут использовать загрузчик «superboot», который работает с вашим существующим ПЗУ в качестве барда процесса загрузки. Прошивается на телефон с помощью программы fastboot.
Как правило, для любого конкретного телефона будет один предпочтительный подход.
Это довольно просто:
Фактические шаги для этого могут различаться от устройства к устройству.
Это необходимо для записи на system
раздел.
На некоторых устройствах, таких как Samsung и LG, есть режим загрузки, в котором вы можете использовать Odin для прошивки чего-либо (в данном случае пользовательского восстановления) без необходимости разблокировать загрузчик.
Другие устройства не имеют режима загрузки, но у некоторых есть официальный способ, например Nexus и Moto. Обычно они используют команду fastboot oem unlock
fastboot.
В случае с телефонами Moto необходимо получить ключ для своего устройства на официальном сайте Motorola, который затем будет использоваться в команде разблокировки.
ВНИМАНИЕ! Эта команда сотрет телефон, если ее выполнить на Nexus!
На некоторых устройствах нет ни режима загрузки, ни официального метода. В этом случае требуется использовать эксплойт.
На устройствах, где есть режим загрузки, вы можете пропустить предыдущий шаг. 1. Скачать Odin и любое кастомное рекавери; 2. Войдите в режим загрузки; 3. Установите его.
На устройствах где его нет: 1. Скачать рекавери .img; 2. Войдите в режим быстрой загрузки; 2. Прошить.
ВНИМАНИЕ: рекавери ДОЛЖЕН быть версией для вашего конкретного устройства!
Это практически неизменно. Просто скачайте ZIP-файл SuperSU, войдите в режим восстановления и установите его.
Мэтью Рид