Про установку и использование LineageOS 16, F-Droid

?v=1

Предлагаю вашему вниманию инструкцию как оптимально (по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS (далее сокращённо LOS) и приложений из F-Droid.
Я думаю, что это статья будет вам интересна, даже если вы не можете установить себе LOS, так как в данной статье также рассмотрены стандартные настройки Android, настройки и методика использования полезных приложений, магазин приложений F-Droid, разрешения Android, которые нельзя ограничить и другие, возможно полезные для вас ньюансы.

Оглавление
Общая информация
Причины перехода на свободную прошивку
Выбор устройства
-Основные факторы, которые необходимо учитывать при выборе устройства
-Подбор устройства
Установка прошивки LOS
-Обновление firmware
-Разблокировка загрузчика (unlock bootloader)
-Пример установки LOS
-Что может пойти не так
-Предподготовка к первому запуску
-Про шифрование устройства
LineageOS
-Стандартные настройки LOS
-Root/рут/права суперпользователя/superuser
-Bootloader (Загрузчик)
F-Droid
Слот VPN
AFWall+ (Android Firewall +) и встроенный Firewall
-Встроенный Firewall
-AFWall+
AdAway
Orbot, Tor Browser и проблема proc/net
-Orbot
-Проблема proc/net
-Tor Browser
Fennec и Bromite
-Fennec
-Bromite
Приложения Google (Google Apps/Gapps)
Yalp store/Aurora Store
Треккеры в приложениях
Контроль разрешений (Permission control), PrivacyGuard, AppOpsX
-Типы разрешений
-Инструменты для ограничения разрешений
--Стандартный для Android механизм разрешений
--Privacy Guard (Защита конфиденциальности)
--AppOpsX (com.zzzmode.appopsx)
-Список разрешений
-Что нельзя ограничить
-Level API/sdk
-По поводу необходимости отслеживать разрешения
SD-card/usb-storage
Рабочий профиль (Work profile) и Shelter (net.typeblog.shelter)
XprivacyLua
ADB (Android Debug Bridge)
Полный отказ от Google в LOS
-DNS
-Captive Portal
-A-GPS
-AOSP Webview
-Project Fi
Backup (бэкап) или резервная копия
Отдельное шифрование личных файлов
Прошивка радиомодуля и низкоуровневые закладки
Другие прошивки
-Replicant
-GrapheneOS
-Не Android устройства и прошивки
-А что же iPhone?
Перспективы
Общие рекомендации
Почему лучше пользоваться последней версией LOS и актуальными устройствами
Мой опыт
Потенциальный вопрос — мой ответ
Методики перехода и частичные (временные) решения
Вопросы айтишникам
Список ссылок

Советую предварительно прочитать вот эти статьи (или после прочтения моей статьи):
habr.com/ru/post/440110 — про LineageOS, MicroG
habr.com/ru/post/440280 — список интересных программ в F-Droid (и не только в F-Droid)
habr.com/ru/company/solarsecurity/blog/427431 — про архитектуру Android более менее понятным языком, советую прочитать все 4 части из цикла. Там описано всё немного техническими терминами, но всё-таки советую вникнуть, если вы хотите примерно понимать устройство и архитектуру Android.
Я постараюсь дополнить эти статьи такими вещами как выбор устройства, прошивка, настройка параметров безопасности и приватности, настройка некоторых программ, а также предоставлю методики по метигации рисков, который возникают даже в свободных прошивках без проприетарных компонентов.
В инструкции я буду ссылаться на англоязычные и русскоязычные названия пунктов настроек операционной системы и программ, так как на данный момент наиболее полную помощь по вопросам можно получить на англоязычных форумах, и так будет привычней искать решение по возникшим у вас вопросам.
Рассматриваться будет версия LineageOS 16(частично некоторые моменты из версии 15.1 также будут рассмотрены) и на основе Android 9 Pie соответственно. Некоторые описываемые методики (точнее почти все, кроме Privacy Guard) применимы не только LineageOS, но и других прошивок на Android 9 Pie.

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


LineageOS[1],[3] — прошивка на основе AOSP (Android Open Source Project), которая делается энтузиастами. LineageOS — это продолжение проекта CyanogenMod. Данная прошивка есть не на все устройства, так как создание такой прошивки под каждое устройство дело рук энтузиастов.

  1. Приватность. LineageOS основана на «чистой» версии Android — AOSP без приложений от Google и других приложений от коммерческих компаний. Отсутствие проприетарных компонентов повышает приватность (вкупе с другими методиками).
    Система Android (AOSP) основана на Linux и распространяется под свободной лицензией [4] и с открытыми исходными кодами (open-source). LineageOS базируется на AOSP (с некоторыми добавлениями от CAF — Code Aurora Forum для тех устройств, в основе которых лежит «железо» от Qualcomm). То есть LineageOS — это прошивка, просто в которой не добавлены проприетарные сервисы от Goolge (а не вырезаны, как некоторые думают). Факт того, что это open-source, позволяет вам просмотреть весь исходный код AOSP и LineageOS на наличие «подлянок»(закладок). Вы можете сами скомпилировать (собрать из исходников) прошивку под своё устройство на основе исходного кода, если вы не доверяете тому, кто компилирует прошивку. Кстати, многие так и делают, но в основном, чтобы что-то добавить/убрать из прошивки.
  2. Безопасность. В некоторых случаях LineageOS выпускает обновления прошивок для тех устройств, которые перестали поддерживаться производителем. Если у вас уже есть устройство, на которое давно не было обновлений безопасности, то вы можете проверить нет ли на ваше устройство прошивки LineageOS, с последними обновлениями безопасности.
    Также, если собираетесь покупать новый смартфон, вы можете подобрать такое устройство, которое поддерживается LineageOS, и которое, с высокой долей вероятности, будет долго поддерживаться сообществом LineageOS.
  3. Дополнительные функции. В прошивке присутствуют дополнительные компоненты, например такие как Trust, Call Recorder (Запись звонков, диктофон) и другие небольшие улучшения. Trust (+Privacy Guard) позволяет централизованно просматривать и управлять настройками безопасности и приватности. Call Recorder — запись звонков. Protected Apps — можно поставить доступ к отдельным приложениям только по отдельному коду или по отпечатку пальца. Кастомизация интерфейса, Dark mode (Тёмная тема) и другие полезные функции.
  4. Заранее обезопасить себя от изоляции, либо от самоизоляции.
    Изоляция. Существуют прецеденты по ограничению использования сервисов западными компаниями. Примеры — запрет на использование западных сервисов на территории Крыма. Запрет на использование западных сервисов в продукции Huawei. Никто не гарантирует, что завтра такое же ограничение могут наложить на более широкий круг пользователей или компаний.
    Самоизоляция. В свете последних тенденций на запрещение и блокировку разными странами сервисов из «враждебных» стран, никто не даст гарантии, что завтра доступ к западным сервисам и программам сохранится на определённых территориях.
    Это ещё один повод перейти на свободное программное обеспечение, чтобы быть менее зависимым от прихоти политиков той или иной страны.


Предлагаю вам методику подбора нового устройства для установки LineageOS на основе моего опыта. Данные советы носят исключительно рекомендательных характер и я не претендую на абсолютную объективность.

Основные факторы, которые необходимо учитывать при выборе устройства


  1. Наличие прошивки на устройство.
    Существуют как «официальные»[3] версии LineageOS, так и «неофициальные». Официальность заключается в том, что 
    — команда компилирует и «подписывает» своим ключом прошивку и выкладывает её на своём сайте [5]
    — для «официально» поддерживаемых устройств есть относительно неплохая поддержка на форумах[7]. Также можно поискать поддержку от непосредственно разработчиков на отдельное устройство на форумах xda[9], 4pda[11] и telegram каналах. Такая поддержка не означает, что вам обязательно ответят на ваш вопрос. Но при правильно поставленном вопросе с подробным описанием проблемы шансы на ответ стремятся к 100%-ам. К сожалению, подавляющая часть разработчиков англоязычные. На данных форумах вам могут помочь не только непосредственно разработчики, но и другие опытные пользователи.
    — «официально» поддерживаемые устройства имеют функцию автообновления «по воздуху»(OTA обновления), то есть как в обычном Android от Google можно будет ставить обновления безопасности просто через отдельный пункт в меню на самом телефоне.
    Неофициальные — собранные энтузиастами. Нет обновлений по воздуху и иногда содержат вирусы. Проверить содержит такая прошивка вирусы или нет, практически невозможно. Если вы только сами не собрали прошивку под устройство, которое официально не поддерживается официально (что могут только неплохие IT-шники).
    Крайне рекомендую выбирать устройство, которое присутствует на официальном сайте[5]. Это один из факторов стабильности прошивки и длительности поддержки устройства, а также того, что в прошивке нет лишнего. В некоторых случаях, если устройство популярное, и для него кто-то делает неофициальную версию, то через время разработчик неофициальной версии присоединяется к команде разработчиков LineageOS (точнее мэйнтейнеров устройства), прошивка оформляется должным образом и становится «официальной». Это означает, что если при выборе устройства ваш взгляд пал на определённую модель, у которой есть только неофициальная версия LineageOS, то вы можете поискать информацию по данному устройству на англоязычном форуме xda-developers на предмет потенциального выхода «официальной» версии в будущем. Такие случаи не так уж и редки.
    Вам в помощь дополнительная информация по устройствам: ссылки [13],[15],[17].
    Также есть разные сайты, где представлены устройства с неофициальными версиями LineageOS, но я не знаю на основе каких данных составлялись эти списки и не могу вам их порекомендовать, как и не могу порекомендовать использовать неофициальные прошивки вообще.
  2. Версия LineageOS для устройства. На данный момент для устройств выпускаются версии прошивки LineageOS 15.1 и 16. Обе версии поддерживают обновления безопасности, но LineageOS 15.1 основана на Android 8.1 Oreo, а LineageOS 16 — на версии Android 9 Pie. Лучше подбирать устройство на версии LineageOS 16, так как чем выше версия Android, тем больше устранено угроз приватности и больше интересных функций. Об этом я напишу позже.
  3. Версия внутренностей устройства. Некоторые производители под одним именем выпускают несколько разных версий с разной «начинкой». Например, существует большое количество версий Samsung Galaxy S5 LTE. Есть несколько версий: А) klte, которая включает в себя ревизии (G900AZ/F/M/R4/R7/T/V/W8, S902L), Б) kltechn которая включает в себя ревизии (G9006V/8V) и так далее. Для быстрого определения используются кодовые имена. Для вышеобозначенного Galaxy S5 LTE есть несколько версий klte, kltekor, kltedv, kltechn, kltekdi. Возможно существуют другие версии Galaxy S5 LTE для которых нет прошивки LineageOS. Поэтому при покупке устройства проверяйте версию у конкретного продавца.
  4. Возможность разблокировать загрузчик (bootloader). Перед покупкой необходимо уточнять есть ли возможность разблокировать загрузчик. Даже если на устройство есть прошивка LineageOS, то это не означает, что у вас будет возможность её установить! Для того, чтобы установить LineageOS вам необходимо иметь разблокированный загрузчик. Для некоторых телефонов это делается легко, путём всего одного действия. Но есть производители которые для некоторых (или для большинства) своих устройств сделали целую процедуру разблокировки загрузчика. Для этого необходимо зарегистрироваться на сайте производителя, ввести информацию о телефоне (или установить на компьютер специальную программу), послать запрос на разблокировку загрузчика и ждать от 0 секунд до 1-го месяца. Huawei ранее позволяла разблокировать загрузчик, но потом такую возможность вообще закрыла. Появились обходные пути, сайты на которых можно было купить код для разблокировки. Данные обходные пути постоянно меняются, для разных устройств обходные пути различаются. Для таких случаев взвесьте все «за и против», выясните есть ли возможность разблокировать загрузчик, сколько придётся ждать (если проходите официальную процедуру разблокировки), сколько стоит код для разблокировки на стороннем сайте для обхода и так далее.
  5. Популярность устройства. Чем более популярное устройство, тем выше шансы на то, что поддержка данного устройства будет продолжаться дольше. Ещё более важным является популярность использования именно LineageOS для данного устройства. Статистику использования можно посмотреть на официальном сайте[19]. Также есть неофициальный, но более репрезентативный сайт[21]. Обратите внимание что А) некоторые названия обозначены кодовыми словами (codename). Б) представлены также те устройства, которые официально не поддерживаются, но используются.
  6. Начинка. При прочих равных рекомендую выбирать устройство с чипом Qualcomm. Устройства на данных чипах в среднем поддерживаются дольше и шире, чем устройства на других чипах.
  7. Другие прошивки и первоначальная прошивка. Если для устройства есть альтернативные прошивки (помимо LOS), то это значит, что во внутренностях прошивок для данного устройства много кто «копается», что повышает шансы на возможность найти решение вашей проблемы, если она возникнет. Также важно обратить внимание на то, какая прошивка изначально установлена на новом устройстве. Лучше всего, если смартфон входит в программу Android One. Это значит, что Google для такого аппарата будет принуждать производителей выпускать обновления безопасности, обновление до новых версий Android 2 года. Данные обновления помогут разработчикам LineageOS дольше поддерживать устройство. Обратите внимание, что сам факт вхождения в программу Android One не гарантирует того, что загрузчик можно будет разблокировать и для данного устройства есть прошивки кроме первоначальной. Например, смартфоны от Nokia, входящие в программу Android One, не имеют возможности установки альтернативных прошивок.
  8. Новизна устройства. Помните, что разрабатывают LineageOS энтузиасты и в какой-то момент у этих энтузиастов может сменится их собственное устройство (сломалось, потеряли, купил новый). В таком случае они могут быть не заинтересованы в дальнейшей поддержке данного устройства. Например, Xiaomi Redmi Note 5(Pro) официально поддерживался не больше года (хотя для него также есть неофициальные прошивки LineageOS). Но такое устройство как LG G2(d802) поддерживается с 2013 года и имеет даже самую последнюю версию LineageOS — 16. Для максимально долгой поддержки желательно покупать относительно новое устройство, которое до сих пор продаётся на международном уровне.
  9. Остальные параметры, которые касаются потребительских характеристик устройства. Например размер оперативной памяти, скорость процессора, поддерживаемые частоты LTE и так далее. Рекомендую покупать телефон с минимум 32 ГБ внутренней памяти, чтобы меньше пришлось пользоваться «облаками», тем самым снижая риски утечки ваших данных. Учтите, что некоторые специфичные вещи на смартфоне могут не поддерживаться, например, такие как инфракрасный порт, разблокировка лица на основе формы черепа (помимо фото), специальные эффекты камеры с несколькими объективами. Но в последних версиях Android некоторые такие функции (например, полноценная поддержка нескольких объективов задней камеры) заложены в самой системе и скорее всего и с этим проблем не возникнет.


Подбор устройства


Далее я предлагаю вам одну из возможных методик подбора смартфона для покупки и установки LineageOS. Предположим, что вам необходим смартфон в средней ценовой категории до 15 000 рублей без особых изысков.

  1. Открываем сайт со статистикой использования LineageOS [21] и начинаем просматривать смартфоны от более популярных к менее популярным. Смартфоны, у которых есть отдельная ссылка в названии, официально поддерживаются на данный момент.
  2. Самый используемый на данный момент из официально поддерживаемых — OnePlus One. Смотрим год выпуска — 2014. Но в России они не продаются, и насколько я понимаю за рубежом тоже не продаются. Идём дальше.
  3. Далее по списку из популярных и продающихся в России — Xiaomi Redmi Note 4. Выпуск 2017 года. Но для этой модели есть только версия LineageOS 15.1(хотя патчи безопасности выпускаются также своевременно). Предположим, что это нам подходит (но плюсы более новой версии LineageOS я опишу ниже). Идём на форум 4pda (и другие форумы), ищем данную конкретную модель и видим, что есть две версии устройства — на чипе МТК и на чипе Qualcomm Snapdragon. Ещё раз проверяем продаётся ли в России версия на чипе Snapdragon (только для этой версии есть LineageOS). Звоним продавцу и спрашиваем точно ли версия на Snapdragon и для какого рынка устройство (необходимо покупать глобальную версию, так как в такой версии больше поддерживаемых частот 4G). Берём на заметку эту версию.
  4. Ищем далее. Xiaomi Poco F1 — слишком дорогой. Xiaomi Redmi 4(X) — ситуация аналогичная Xiaomi Redmi Note 4. ZUK Z2 Plus — не продаётся в России. OnePlus 3 / 3T — слишком дорогой. И так по очереди доходим до Xiaomi Mi A1. Продаётся на чистом Android, входит в программу Android One, не надо ждать разблокировки загрузчика, нет критичных сообщений на форумах.


В итоге, если бы я выбирала устройства до 15 000 рублей, я бы выбрала что-то между Xiaomi Redmi 4(X), Xiaomi Redmi Note 4 и Xiaomi Mi A1.

ВНИМАНИЕ: это только один из возможных методик подбора устройства, я не несу ответственности за то, что в какой-то момент на купленный вами телефон команда LOS перестанет выпускать обновления или что вы не сможете разблокировать загрузчик. Читайте всё внимательно и принимайте взвешенное решение.


Советую вам сначала прочитать все инструкции по установке на конкретное устройство LOS на сайте LOS, дополнительно прочитать темы на 4pda, xda-developers, reddit.com/r/LineageOS и из этой статьи (некоторые предостережения).

Обновление firmware


После покупки устройства необходимо обновить стоковую (изначальную) прошивку смартфона до последней версии. Дело в том, что Google постепенно разделяет Android на разные слои, чтобы можно было обновлять верхний слой отдельно, что повысит легкость разработки новых прошивок для старых устройств (для любой из версии Android). Этой возможностей воспользовалась и команда LOS, обновляя только верхний слой. Но для корректной работы, лучше установить обновления изначальной прошивки, чтобы обновить не только верхний слой, но и нижние слои (firmware). Для этого вам придётся подключится к Wi-Fi и в настройках найти пункт «обновление прошивки». Возможно придётся это делать несколько раз подряд.
Производители зачастую скрывают пункт меню «обновление прошивки», если вы разблокировали загрузчик. Поэтому рекомендуется обновлять изначальную прошивку до разблокировки загрузчика.
Внимание: компания Huawei (в том числе бренд Honor), на данный момент закрыли возможность разблокировки загрузчика. Но для разных устройств этой компании существуют разные обходные способы разблокировки загрузчика, которые работают только на старых прошивках. Если вы решили всё-таки приобрести устройство от Huawei для прошивки альтернативными прошивками (например, LOS), то заранее прочитайте форумы 4pda, xda-developer и другие по конкретному устройству, на тему разблокировки загрузчика. Для этих устройств возможно лучше будет сначала разблокировать загрузчик, а потом уже обновлять firmware.

Разблокировка загрузчика (unlock bootloader)


Для некоторых устройств необходимо разблокировать загрузчик через специальную программу.
На примере устройств Xiaomi (пример инструкции[23]):

  1. Создаём аккаунт Xiaomi на телефоне, указываем свой номер телефона, электронную почту.
  2. Получаем СМС с кодом для регистрации.
  3. Верифицируем аккаунт
  4. Заходим на en.miui.com/unlock и заходим под своей учётной записью. Тут могут быть возникнуть проблемы с тем, что иногда сайты отображаются на китайском. Ищем пункты меню для перехода на англоязычную версию.
  5. Скачиваем программу с сайта en.miui.com/unlock/download_en.html. Учтите, что данная программа работает только на компьютере с Windows и ей требуется доступ в интернет.
  6. В программе Mi Unlock в настройках находим пункт Install Drivers, жмём его и ждём установку драйверов.
  7. На смартфоне в системных настройках несколько раз подряд нажимаем на строчку с версией MIUI и для вас открывается скрытое меню developer settings (настройки разработчика/для разработчика)
  8. Далее в Настройки → Расширенные настройки→Для разработчиков находим пункт «Отладка по USB», а также могут быть дополнительные настройки типа «Enable OEM unlock», которые тоже нужно включить.
  9. Подключаем смартфон к компьютеру. Перезагружаем смартфон в режим fastboot (зажимаем одновременно кнопку громкости вниз + кнопку включения смартфона до тех пор пока не появится надпись fastboot).
  10. В программе Mi Unlock необходимо зайти под своей учётной записью. Далее в программе должен определится смартфон. Жмёте кнопку «Unlock», несколько раз подтверждаете и ждёте результата. Если смартфон относительно новый, то вам покажут предупреждение, что до разблокировки смартфона осталось N-ое количество времени. Это может быть от 72 часов до 1440. Относительно старые модели должны разблокироваться или сразу, или за 72 часа.


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

  • Как вы можете видеть, чтобы разблокировать загрузчик, в некоторых случаях необходима обязательная верификация по номеру телефона и электронной почте. В свете вопросов приватности лично для меня это крайне негативный факт. Я уверена, что при авторизации в телефоне максимально будет считана информация (окружающие wi-fi точки, местоположение по GPS, текущие настройки и так далее) и передана на китайские сервера. Также при установке и запуске Mi Unlock информация с компьютера также уйдёт на китайские сервера. Параноикам (в хорошем смысле этого слова) придётся устанавливать чистую версию Windows (или в виртуалке с пробрасыванием портов), смартфоном не пользоваться до того как поставите прошивку LineageOS, менять MAC адрес Wi-Fi (других Wi-Fi точек рядом не было), делать временную СИМ карту и временный электронный адрес почты.
  • В процессе у вас могут возникнуть некоторые проблемы:
    -Не определяется смартфон программой Mi Unlock. Попробуйте вставить в другой USB разъём компьютера кабель от вашего смартфона. Также через настройки попробуйте обновить версию Mi Unlock (китайцы считают что на сайте можно выкладывать не последнюю версию). Mi Unlock запускайте от имени администратора (зажимаем SHIFT, правой кнопкой мыши на ярлыке программы → Запустить от имени администратора).
    -Смартфон не входит в режим fastboot. Попробуйте подольше подержать зажатыми кнопки громкости и включения, до 25 секунд.
    -Mi Unlock не подключается к серверу в Китае — попробуйте на время поставить китайский proxy на компьютере.
    -На одном аккаунте Xiaomi можно разблокировать только одно устройство в 30 дней.


Внимание: при разблокировке загрузчика у вас удалятся все данные на устройстве, поэтому если вы пользовались устройством и у вас остались какие-то данные, то вам надо обеспокоится их сохранением отдельно (делаем бэкап).

Далее ищем инструкцию по установке на конкретное устройство.
На примере Xiaomi Redmi 4(X) [25]. Или, если у вас устройство с неофициальной версией LOS — то на xda-developer и 4pda. В любом случае, даже если у вас официальная версия LOS — то лучше проверить на всех форумах на наличие ньюансов. Отдельно хочу заметить, что если уже установлена какая-то другая альтернативная прошивка, то возможно вам придётся совершить другие действия, особенно если вы хотите сохранить некоторые настройки и данные приложений. Того же касается и крупных (мажорных) обновлений от LOS (например, с версии 15.1 до версии 16).

СОВЕТ: если не можете найти информацию по своему устройству на форумах (особенно зарубежных) — попробуйте поискать по коду устройства. Например, для Galaxy A7 (2017) кодовое имя — a7y17lte. Зачастую интересующая вас информация на форумах есть, но надо получше поискать.

Пример установки LOS


Давайте пройдёмся по пунктам [25] с некоторыми комментариями от меня.

БАЗОВЫЕ ТРЕБОВАНИЯ
1. Удостоверится, что у вас установлены adb и fastboot.
Некоторые ссылки на то как установить adb и fastboot[27], [29]. Желательно не устанавливайте вспомогательных программ (если не доверяете автору этих доп. программ), и устанавливайте программы из официальных источников. Для Windows [31].
2. Включить «Система»- «Для разработчиков»- «Отладка Android (Включить интерфейс Android Debug Bridge (ADB))» («System»- «Developer options»- «Android debugging (Enable the Android Debug Bridge (ADB) interface)»)

РАЗБЛОКИРОВКА ЗАГРУЗЧИКА
Этот пункт я уже описала выше, не буду его повторять.

УСТАНОВКА МОДИФИЦИРОВАННОГО РЕКАВЕРИ (RECOVERY)
1. Скачиваем TWRP для определённого устройства. Иногда производитель выпускает устройства с немного отличающимися версиями частей устройства, будь то сенсорный экран или что-то ещё, и тогда TWRP с официального сайта может не сработать (или работать криво). Это решается поиском альтернативного (или более нового) TWRP для этого устройства на форумах 4pda или xda-developer.
2. Подключаем устройство к вашему компьютеру через USB.
3.1) В компьютере в командной строке, или в терминале в Linux/macOS набираем:
adb devices
На экране смартфона должно всплыть окно с запросом на подключение определённого компьютера к смартфону для отладки. Если возникает ошибка в командной строке (или терминале Linux), то в Windows попробуйте запустить командную строку от имени администратора, или sudo adb devices в терминале Linux/macOS.
Далее удостоверяемся, что показывается 1 устройство.
3.2) Набираем:
adb reboot bootloader
Смартфон должен перезапустится в режим fastboot. Также перезагрузить в fastboot режим через одновременное зажатие кнопку включения+кнопку уменьшения громкости.
На экране смартфона должна появится какая-то заставка.
4. Набираем:
fastboot devices
Получаем список устройств. Удостоверяемся, что показывается 1 устройство.

5. Прошиваем рекавери (заранее скачанный TWRP) на устройство. А ещё лучше временно загружаем (ниже описано в чём отличие).
fastboot flash recovery twrp-x.x.x-x-santoni.img
Где «twrp-x.x.x-x-santoni.img» — тот файл TWRP, который вы скачали.
Внимание: для удобства можно указывать полный путь к файлу типа «C:\Users\Вася пупкин\Desktop\twrp-x.x.x-x-santoni.img» с ковычками в пути файла.
Иногда на некоторые устройства (особенно для устройств с функцией A/B) просто так не устанавливается TWRP и надо делать некоторые ухищрения. В любом случае я вам не советую прошивать TWRP в устройство, так как с установкой TWRP ещё устанавливается приложение в смартфон с треккерами отслеживателями. Выход есть — можно просто запускать TWRP разово через команду типа:
fastboot boot "C:\Users\Вася пупкин\Desktop\twrp-x.x.x-x-santoni.img"
6. Если вы прошили TWRP, а не запустили разово, то вам придётся заново зайти в recovery через одновременное зажатие кнопку включения+кнопку уменьшения громкости.

УСТАНОВКА LOS ЧЕРЕЗ РЕКАВЕРИ
1. Скачайте прошивку LOS c официальной страницы или соберите из исходников сами. Опционально: скачайте Google Apps (для архитектуры arm64). [33]
Это установка приложений Google. Не вижу большого смысла в этом действии, так как одна из целей установки LOS — это избавится от нескончаемой слежки Google. Ранее LOS, когда ещё называлась CyanogenMod пользовалась популярностью, потому что эта прошивка давала возможность поддерживать старые устройства и привносила некоторые функции. Сейчас же по официальным опросам[35 — пункт Features] большая часть пользователей выбравших LOS, сделали это ради функции Privacy Guard («Защита конфиденциальности»). И количество пользователей, которые вообще не устанавливают Google Apps (Gapps) медленно, но верно растёт.
Особняком стоит проект MicroG[37] и его реализация для LOS[39]. Это достаточно удачная попытка переписать приложения Google, оставив основной функционал, но при этом максимально ограничить передачу данных на сервера Google. Я не буду сильно останавливаться даже на этом проекте, потому что я решила для себя на 100% отказаться от услуг Google (и не только Google). О плюсах (и минусах) такого решения я напишу отдельно в одном из пунктов.
2. Если вы не в режиме рекавери — перезагрузитесь в рекавери через одновременное зажатие кнопку включения+кнопку уменьшения громкости. Если вы не устанавливали TWRP — то надо будет ещё раз временно запустить заново TWRP через:
fastboot boot "C:\Users\Вася пупкин\Desktop\twrp-x.x.x-x-santoni.img"
3. В основном меню выбираем Wipe
4. Выбираем Format Data, вводим «yes». Это удалит шифрование и все ваши личные данные на устройстве.
5. В том же меню Wipe заходим в Advanced Wipe.
6. Проставляем галочки ТОЛЬКО напротив Cache и System, и протягивая «свайпом» ползунок завершаем сиё действие.
7. Далее необходимо через механизм ADB Sideload загрузить прошивку LOS в устройство.
Для этого в смартфоне выбираем «Advanced», далее «ADB Sideload»
После этого на компьютере запускаем:
adb sideload fastboot boot "C:\Users\Вася пупкин\Desktop\filename.zip"
где «C:\Users\Вася пупкин\Desktop\filename.zip» — путь к прошивке LOS в формате «zip»
На экране смартфона будет отображён лог прошивания.
На некоторых устройствах в некоторых версиях прошивки в логе в конце высвечивается что-то типа «firmware not installed». Зачастую это ложная надпись и прошивка всё-таки будет установлена. Но на всякий случай проверьте на форумах (4pda, reddit, xda-developer) есть ли такие же проблемы с вашем устройством у других.
8. Опционально. ВНИМАНИЕ: Если вы всё-таки хотите установить Google Apps, то это надо сделать тут же не перезагружая смартфон! Надо будет вернуться назад в меню, потом снова в смартфоне выбираем «Advanced», далее «ADB Sideload» и запускаем на компьютере
adb sideload fastboot boot "C:\Users\Вася пупкин\Desktop\gapp.zip"
где «C:\Users\Вася пупкин\Desktop\gapp.zip» — путь к Google приложениям на вашем компьютере. Если вы после прошивки LOS случайно перезагрузите смартфон, то вам придётся делать Factory reset, иначе приложения Google практически не будут работать.
9. Опционально: рутируйте устройство установив специально подготовленный LOS AddonSU (пакет для версии arm64)[41] или другой аддон для рутирования, который вам нравится.
adb sideload fastboot boot "C:\Users\Вася пупкин\Desktop\addonsu-16.0-arm64-signed.zip"

Примечание: получение рута (root) для достижения цели реального управления устройством просто необходимо. Без рута, к сожалению, нельзя установить основные программы файрволы (firewall) и мощные ограничители доступа к данным и датчикам на устройстве другим программам (permission manager). Поэтому крайне рекомендую рутировать ваше устройство. Стандартным аддоном является вышеупомянутый LOS AddonSU, но многие пользователи пользуются таким аддоном как Magisk. Я лично пользуюсь стандартной поставкой LOS AddonSU. Причины, минусы и плюсы я опишу в отдельном пункте.

Что может пойти не так


  • В некоторых случаях после пункта 4) в «УСТАНОВКА МОДИФИЦИРОВАННОГО РЕКАВЕРИ (RECOVERY)» необходимо выполнить пункт 4.5) Набираем:
    fastboot oem unlock
    На данном этапе происходит окончательная разблокировка загрузчика, даже если вы провели полную процедуру разблокировки.
  • Когда скачиваете дополнения (Gapps или рут), обращайте внимание какую именно версию вы скачиваете. Необходимо скачивать версию, соответствующую вашему устройству. Существуют 3 основные версии — arm, arm64 и x86.
  • Особенно внимательно отнеситесь, когда будете делать Wipe, Advanced Wipe или Format Data. Чётко действуйте согласно инструкции. Не делайте лишних очисток, если этого не требуется (иначе можно попасть на soft brick). Но и не забывайте очищать то, что описано.
  • Если вы что-то неправильно делали, то можете попасть в разные ситуации, например, bootloop (бесконечная перезагрузка или перезагрузка только в режим рекавери), soft brick (лёгкое окирпичивание), hard brick (жёсткое окирпичивание). Bootloop и soft brick не являются чем-то страшным, это можно исправить.
    Самым тяжелым случаем является hard brick. Это когда телефон не реагирует абсолютно ни на что. Ни на какие комбинации клавиш. Экран вообще ничего не показывает и даже при подключении зарядного устройства не загорается индикатор зарядки. Но есть хорошая новость — на современных устройствах полностью окирпичиться (получить hard brick) крайне тяжело. Даже если вы где-то ошибётесь, то при должном умении и следуя инструкция на форумах сможете восстановить работоспособность устройства. Случаи «bootloop» бывают достаточно часто. Чаще всего это решается полной переустановкой прошивки. Желательно сначала прошить заново стоковую прошивку, а потом снова LOS. Soft brick случается гораздо реже. Но если же ваше устройство реагирует хоть на что-то, то в 99%ах случае у вас есть возможность восстановить работоспособность. На моей памяти при внимательном чтении инструкций и форумов ни у меня ни у моих знакомых ситуации с hard brick не было. Был только soft brick из-за попытки прошить устройство неправильным zip-архивом, причем с версии Android 7 на версию LOS 16. Всё удалось восстановить, но лучше не доводить до такого.
  • Иногда при получения рута через стандартный LOS AddonSU рут не предоставляется, хотя в логе будет написано, что установка рута завершилась успешно. При первой загрузке LOS это надо проверять сразу в настройках (ниже описано где). Иногда с первого раза предоставляется только рут на ADB, но не для приложений. В таких случаях надо заново зайти в TWRP, НЕ УДАЛЯЯ НИЧЕГО и НЕ ДЕЛАТЬ НИКАКОГО Wipe, просто повторно через adb sideload загрузить
    adb sideload fastboot boot "C:\Users\Вася пупкин\Desktop\addonsu-16.0-arm64-signed.zip"
  • Иногда, на некоторых устройствах TWRP может не срабатывать. Причем ошибки могут возникать на разных этапах. Начиная с того, что может просто не загружаться меню TWRP или не работать экран, заканчивая тем, что на самых последних этапах может не загружать прошивка LOS. Если что-то не получается, то ищите TWRP под конкретное устройство или даже под конкретную прошивку. Например, для некоторых устройств есть несколько разных TWRP, которые нужны для разных целей:
    1) П

    © Habrahabr.ru