Как сделать TWRP Recovery для своего устройства

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

Сразу обозначим границы: универсальной инструкции «под любую модель» не существует. Разделы, чипсеты (Qualcomm, MediaTek, Exynos, Unisoc) и схемы загрузки (A-only, A/B, dynamic partitions) отличаются, и шаги, безопасные для одного аппарата, могут привести к bootloop на другом. Ниже — общая методология, которую нужно адаптировать под конкретное устройство, сверяясь с веткой вашей модели на форуме 4PDA или XDA.

Подготовка: что проверить до начала работы

Первое действие — убедиться, что загрузчик разблокируется. На многих устройствах это делается через fastboot-команду fastboot flashing unlock или фирменную утилиту производителя (у Xiaomi, например, своя процедура с ожиданием). На части аппаратов, особенно операторских и некоторых моделях Huawei, разблокировка закрыта полностью — в этом случае самостоятельная установка кастомного рекавери невозможна штатными средствами.

Второй шаг — собрать информацию об устройстве: точный код модели, чипсет, версию Android, схему разделов. Нужно выяснить, есть ли у аппарата отдельный раздел recovery или рекавери живёт внутри boot-образа (характерно для устройств с A/B-разделами). Это определяет, куда именно будет прошиваться результат.

  • 🔓 Проверьте возможность разблокировки загрузчика для вашей модели
  • 📱 Узнайте точный код устройства (codename) и чипсет
  • 💾 Сделайте полный бэкап стоковых разделов, особенно boot и recovery
  • 🖥️ Подготовьте ПК с Linux (или WSL) и установленными adb и fastboot
⚠️ Внимание: разблокировка загрузчика на большинстве устройств стирает все пользовательские данные и может аннулировать гарантию. Сохраните всё важное заранее.

Способ 1: портирование TWRP с похожего устройства

Портирование — самый быстрый путь, если существует устройство-донор на том же чипсете и с близкой конфигурацией. Суть метода: берётся готовый образ TWRP от донора и подменяются критичные компоненты — dtb/dtbo, файлы конфигурации сенсорного ввода и дисплея, а также fstab с таблицей разделов.

Для работы понадобится инструмент распаковки boot/recovery-образов, например Android Image Kitchen или magiskboot. Образ разбирается на ядро, ramdisk и dtb; в ramdisk донора подменяется recovery.fstab на файл, соответствующий разметке вашего аппарата. Неправильный fstab — самая частая причина того, что портированное рекавери не видит разделы или не монтирует data.

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

📊 Какой способ создания TWRP вам ближе?
Портирование с донора
Сборка из исходников
Автоматические инструменты
Пока только изучаю тему

Способ 2: сборка TWRP из исходников

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

Device tree можно сгенерировать автоматически из стокового boot- или recovery-образа с помощью скриптов вроде twrpdtgen, а затем доработать вручную: указать флаги шифрования, пути к разделам, параметры экрана. Далее синхронизируется минимальный манифест TWRP (omni или twrp minimal manifest) и запускается сборка:

source build/envsetup.sh

lunch twrp_кодовое_имя-eng

mka recoveryimage

Результатом будет файл recovery.img, готовый к прошивке. Ожидайте, что первая сборка редко получается рабочей: типичные проблемы — неработающий тачскрин, невозможность расшифровать data-раздел, неправильная ориентация экрана. Каждая из них решается правкой флагов в BoardConfig.mk.

☑️ Перед первой прошивкой собранного recovery

Выполнено: 0 / 5

Автоматические инструменты и их ограничения

Существуют утилиты, обещающие создать TWRP «в один клик» — различные auto-porter'ы и онлайн-генераторы. Они действительно способны выдать загружающийся образ для несложных устройств на популярных чипсах MediaTek и Qualcomm, но результат почти всегда требует ручной доработки.

Относитесь к таким инструментам как к отправной точке, а не к готовому решению. Автоматически сгенерированный fstab и device tree стоит проверить вручную перед прошивкой — ошибка в путях разделов может привести к записи не туда.

Как проверить разметку разделов устройства

Загрузитесь в стоковую систему с root или используйте adb shell, затем выполните команду ls -la /dev/block/by-name/ (на многих устройствах) или изучите вывод команды cat /proc/partitions. Пути и имена разделов зависят от чипсета: у Qualcomm это обычно /dev/block/bootdevice/by-name/, у MediaTek — /dev/block/platform/.../by-name/. Сверьте результат с fstab, который планируете использовать.

Прошивка и первое тестирование

Прошивается образ через fastboot. Команда зависит от схемы разделов: при наличии отдельного раздела recovery это fastboot flash recovery recovery.img, а на A/B-устройствах без такого раздела образ сначала загружают временно командой fastboot boot recovery.img, не записывая его на постоянной основе.

Временная загрузка через fastboot bootсамый безопасный способ проверить самосборное рекавери: если образ нерабочий, устройство просто перезагрузится в систему, и ничего не сломается. Прошивайте образ на постоянку только после того, как убедились, что тачскрин, монтирование разделов и расшифровка data работают корректно.

⚠️ Внимание: никогда не прошивайте образ, собранный для другого чипсета или с чужим dtb, без проверки — это один из частых путей к состоянию «кирпича», из которого аппарат выводится только через сервисные режимы (EDL, Download Mode) или программатор.
МетодСложностьКогда подходитГлавный риск
Портирование с донораСредняяЕсть аппарат на том же чипсетеНерабочий тач или экран
Сборка из исходниковВысокаяНет доноров, нужен полный контрольОшибки в device tree
Автоматические генераторыНизкаяПопулярный чипсет, быстрый стартНекорректный fstab
Готовая сборка сообществаМинимальнаяМодель уже поддерживается энтузиастамиНедоверенный источник файла

Типичные проблемы и их диагностика

Рекавери загружается, но экран чёрный — вероятная причина в несовпадении драйвера дисплея или неправильных флагах framebuffer в конфигурации. Проверьте, отвечает ли устройство на adb devices в этом состоянии: если отвечает, рекавери работает, и проблема только в выводе изображения.

Не монтируется раздел data — почти всегда дело в шифровании. Современные версии Android используют FBE (file-based encryption), и для его поддержки в device tree должны быть корректные флаги и блобы keystore от вашей версии прошивки. Обновление стоковой системы после сборки рекавери может сломать расшифровку — это нормальная и известная ситуация.

  • 🖥️ Чёрный экран — проверьте adb-доступ и флаги дисплея
  • 🔐 Data не расшифровывается — сверяйте блобы с версией стоковой прошивки
  • 👆 Тачскрин не отвечает — нужен правильный драйвер ввода в dtb
  • 🔄 Рекавери перезаписывается стоковым — отключите авто-восстановление в системе или прошейте сразу с последующей загрузкой в TWRP

FAQ: частые вопросы о создании TWRP

Можно ли сделать TWRP без разблокировки загрузчика?

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

Чем портирование отличается от сборки из исходников?

Портирование — адаптация готового бинарного образа с устройства-донора, быстрее, но с ограничениями. Сборка из исходников компилирует TWRP под ваш device tree с нуля — дольше и сложнее, но результат чище и поддерживаемее.

Устройство ушло в bootloop после прошивки — что делать?

Загрузитесь в fastboot (комбинация кнопок зависит от модели) и прошейте обратно стоковый boot или recovery из заранее сделанного бэкапа. Именно поэтому бэкап до экспериментов обязателен.

Подойдёт ли TWRP от другой ревизии моей модели?

Иногда да, иногда нет — зависит от того, менял ли производитель дисплей, тачскрин или разметку между ревизиями. Проверяйте опыт других владельцев в профильной ветке форума и тестируйте через временную загрузку fastboot boot.

Нужен ли root для создания TWRP?

Для самой сборки — нет, вся работа идёт на ПК. Root на устройстве полезен лишь для снятия дампов разделов и изучения разметки, но часто это можно сделать и через стоковые прошивки.