Выход из циклической загрузки
При прошивке устройства могут возникать ситуации, когда устройство становится "окирпиченным". Теоретически, если использовать fastboot только для прошивки загрузочного раздела или установить неподходящие модули, из-за которых устройство не загружается, то это можно восстановить соответствующими операциями. В данном документе описаны некоторые экстренные методы восстановления работоспособности "окирпиченного" устройства.
Кирпич путем перепрошивки загрузочного раздела
В KernelSU при прошивке загрузочного раздела могут возникнуть следующие ситуации:
- Загрузочный образ прошивается в неправильном формате. Например, если формат загрузки телефона -
gz
, а вы прошили образ в форматеlz4
, то телефон не сможет загрузиться. - Для корректной загрузки телефона необходимо отключить проверку AVB (обычно для этого требуется стереть все данные на телефоне).
- Ядро содержит ошибки или не подходит для прошивки телефона.
Независимо от ситуации, восстановить работоспособность можно путем прошивки стокового загрузочного образа. Поэтому в начале руководства по установке мы настоятельно рекомендуем создать резервную копию стокового загрузочного образа перед прошивкой. Если у вас нет резервной копии, вы можете получить оригинальную заводскую загрузку от других пользователей с таким же устройством, как у вас, или из официальной прошивки.
Окирпичивание из-за модулей
Установка модулей может быть более распространенной причиной окирпичивания устройства, но мы должны серьезно предупредить вас: Не устанавливайте модули из неизвестных источников! Поскольку модули обладают правами root, они могут нанести непоправимый ущерб вашему устройству!
Нормальные модули
Если вы прошили модуль, безопасность которого доказана, но он приводит к невозможности загрузки устройства, то такая ситуация легко восстанавливается в KernelSU без каких-либо проблем. KernelSU имеет встроенные механизмы для спасения устройства, в том числе следующие:
- Обновление AB
- Восстановление при нажатии клавиши уменьшения громкости
AB-обновление
Механизм обновления модулей в KernelSU основан на механизме AB-обновления, используемом в OTA-обновлениях системы Android. При установке нового модуля или обновлении существующего он не будет напрямую изменять текущий файл модуля. Вместо этого все модули будут встроены в другой образ обновления. После перезагрузки системы она попытается начать использовать этот образ обновления. Если система Android успешно загрузится, то модули будут действительно обновлены.
Поэтому самым простым и наиболее часто используемым методом спасения устройства является принудительная перезагрузка. Если после прошивки модуля не удается запустить систему, можно нажать и удерживать кнопку питания более 10 секунд, после чего система автоматически перезагрузится; после перезагрузки произойдет откат к состоянию до обновления модуля, а ранее обновленные модули будут автоматически отключены.
Спасение, с зажатой клавишей уменьшения громкости
Если обновление AB не помогло решить проблему, можно попробовать использовать Безопасный режим. В безопасном режиме все модули отключены.
Войти в безопасный режим можно двумя способами:
- Встроенный безопасный режим некоторых систем; некоторые системы имеют встроенный безопасный режим, доступ к которому осуществляется долгим нажатием кнопки уменьшения громкости, в то время как другие (например, MIUI) могут включить безопасный режим в Recovery. При входе в безопасный режим системы KernelSU также переходит в безопасный режим и автоматически отключает модули.
- Встроенный безопасный режим KernelSU; метод работы заключается в том, что после первого экрана загрузки необходимо непрерывно нажать клавишу уменьшения громкости более трех раз. Обратите внимание, что именно нажать-отпустить, нажать-отпустить, нажать-отпустить, а не нажать и удерживать.
После входа в безопасный режим все модули на странице модулей менеджера KernelSU Manager отключаются, но можно выполнить операцию "деинсталляция" для удаления модулей, которые могут вызывать проблемы.
Встроенный безопасный режим реализован в ядре, поэтому вероятность пропуска ключевых событий из-за перехвата исключена. Однако для ядер, отличных от ГКИ, может потребоваться ручная интеграция кода, и за рекомендациями можно обратиться к официальной документации.
Вредоносные модули
Если описанные выше способы не помогли спасти устройство, то высока вероятность того, что установленный модуль имеет вредоносные операции или повредил устройство иным способом. В этом случае есть только два варианта:
- Стереть данные и прошить официальную систему.
- Обратиться в сервисную службу.