Отсутствует «Управление корневым доступом» в параметрах разработчика в LineageOS 16.

Мой телефон Mi 5s Plus 6GB/128GB. После чистой установки (сначала прошил MIUI 9.6.27) официальной LineageOS 16.0 19 сентября 2019 г. я не могу найти «Управление корневым доступом» в параметрах разработчика.

После форматирования и расширенной очистки я установил LineageOS, Open Gapps Pico ARM64 для Android 9.0 и Magisk 19.4. Теперь все три работают нормально, и я смог предоставить root-доступ к резервному копированию AdAway и Titanium через Magisk. Но я не смог найти управление корневым доступом в настройках разработчиков.

Итак, установил addonsu-16.0-arm64-signed(.)zipс этой страницы LineageOS через TWRP. Хотя после перезагрузки опция управления корневым доступом по-прежнему отсутствует. Он даже не отображается серым цветом, его просто нет. На экране «Доверие» Root access: Disabledпрямо под надписью «Доверие SELinux: Enforcing».

Я хотел бы предоставить root-доступ к ADB. Можно ли через эмулятор терминала (на телефоне)? Есть ли какая-нибудь команда для этого... потому что я могу стать root "по su" в эмуляторе терминала через Magisk.

Редактировать-2:

(1) Как я упоминал ранее, я пробовал то же самое через командную строку администратора Windows 10 , и результат был таким же.

Насколько я понимаю, в Window 10 нет «правил udev» .

(2) Вот как я запускал команду adb sideload из терминала Ubuntu mate 19.04:

admn@um:~$ sudo su

[sudo] пароль для администратора: root@um:/home/admn# adb sideload lineage-16.0-20190719-nightly-natrium-signed.zip

Появлялась ошибка «недостаточно прав».

(3) Вот ошибка «недостаточно прав» во всех подробностях, где вы можете видеть, что она относится к веб-сайту разработчика Android:

root@um:/home/admn/Downloads# adb sideload lineage-16.0-20190919-nightly-natrium-signed.zip

adb: sideload connection failed: insufficient permissions for device: user in plugdev group; are your udev rules wrong?

See [http://developer.android.com/tools/device.html] for more information

adb: trying pre-KitKat sideload method...

adb: pre-KitKat sideload connection failed: insufficient permissions for device: user in plugdev group; are your udev rules wrong?

See [http://developer.android.com/tools/device.html] for more information

root@um:/home/admn/Downloads#

(4) Прямо на телефоне через TWRP: теперь я обновлял один и тот же телефон последние два с лишним года точно таким же образом. Почти раз в неделю в течение двух с лишним лет.

Примечание. Каждый раз я всегда проверяю sha256sum перед переносом ПЗУ на телефон.

Сначала я переношу ПЗУ LineageOS в папку «Загрузки» телефона через USB-кабель, загружаюсь в TWRP> установить> нахожу zip-файл LineageOS.

Но на этот раз, впервые за два с лишним года, обновление завершилось с ошибкой 7.

(4-A) Я пробовал этот маршрут много раз после нескольких перезагрузок, но установка не проходила.

(4-B) Теперь телефон нормально не загружался. Он зависал на экране с логотипом LineageOS более 30 минут.

(5) Я пытаюсь перейти к этому экрану «Управление корневым доступом»: https://i.imgur.com/l3owFfY.jpg

Конечно этот образ не мой, но он из LineageOS.

(6) «AddonSU» LineageOS предназначен НЕ только для сборок пользовательской отладки. Вот ссылка на страницы с инструкциями по установке LineageOS для Natrium (Mi 5s Plus) и Beryllium (Poco F1) . Где в конце страницы написано: « (Необязательно): рутируйте свое устройство, установив LineageOS AddonSU (используйте пакет arm64) или любым другим способом, который вы предпочитаете » .

Прикрепляю скриншот: https://i.imgur.com/jTTypVj.jpg

Спасибо.

Редактировать-1:

  • Официальное ПЗУ LineageOS 16 не поставляется с предварительно собранным «Addon-SU». В их инструкциях по установке сказано установить Addon-SU (отдельно) со страницы «Дополнительно», на которую я дал ссылку.
  • С Magisk я знаю, что могу предоставить root-доступ любому обычному приложению, но как я могу предоставить «Root-доступ к ADB» ?

Причина, по которой мне нужен root-доступ к ADB, заключается в том, что 2 дня назад я попытался обновить ПЗУ LineageOS через TWRP, но это не удалось, а затем я не смог прошить новое или старое ПЗУ Lineage через ADB, так как я продолжал получать эту ошибку:

adb: sideload connection failed: insufficient permissions for device: user in plugdev group; are your udev rules wrong?

Несмотря на то, что я запускал эту adb sideload lineage-16.0-20190719-nightly-natrium-signed.zipкоманду как пользователь ROOT из Ubuntu 19.04. Я также пробовал то же самое из командной строки администратора Windows 10.

Итак, после неудачного обновления LineageOS: (1) я не смог прошить новую/старую прошивку Lineage через TWRP, (2) я не смог прошить любую прошивку Lineage через ADB.

Мне пришлось установить MIUI 10 ROM, затем отформатировать и выполнить расширенную очистку, чтобы снова установить LineageOS. Итак, теперь я пытаюсь предоставить root-доступ к ADB, чтобы этого больше не повторилось.

Ответы (1)

addonsuэто решение для рутирования с открытым исходным кодом от LineageOS. Magisk — еще одно решение для рутирования. Так же как и SuperSU, SuperUser от PHH, CF-Auto-Root и так далее. Вы не можете / не должны / не должны использовать несколько решений для рутирования одновременно. Magisk — в процессе перепрошивки — удаляет любые файлы, связанные с другими решениями для рутирования, включая /system/xbin/suфайлы addonsu. Это должно быть причиной отсутствия «Управление корневым доступом» в параметрах разработчика .

Если ваше ПЗУ предварительно собрано addonsu(проверьте параметры разработчика), вам не нужно прошивать Magisk. Если это не так, прошейте addonsuили Magisk.

Я хотел бы предоставить root-доступ к ADB. Можно ли через эмулятор терминала (на телефоне)?
...
С Magisk я знаю, что могу предоставить root-доступ любому обычному приложению, но как я могу предоставить «Root-доступ к ADB»?

Демон ADB ( adbd) может быть запущен от имени пользователя root только в userdebugсборках * , как описано в разделе Почему «adb root» ничего не делает? И это не требует рутирования вашего телефона.
Magisk может предоставить root-доступ, т. shellе. когда вы выполняете adb shell su, Magisk рассматривает shell(UID: 2000) как обычное приложение. Таким образом, «предоставить root-доступ к ADB» отличается от «предоставить root-доступ к оболочке ADB» .

Я попытался обновить ПЗУ LineageOS через TWRP, но это не удалось
...
так как я продолжал получать эту ошибку:
adb: sideload connection failed: insufficient permissions for device: user in plugdev group; are your udev rules wrong?

Упомянутая вами ошибка связана не с Android, а с вашей ОС Linux. Когда вы вставляете устройство Android в ПК, созданный узел устройства /dev/bus/usb/...должен быть доступен для чтения/записи для пользователя без полномочий root, что обычно не так. Таким образом, вам либо нужно запустить сервер adb от имени пользователя root:

~$ sudo adb kill-server
~$ sudo adb start-server

Или настройте udevправа собственности/разрешения узла устройства, как описано здесь , и добавьте себя в plugdevгруппу (если это еще не сделано), как описано здесь .

Несмотря на то, что я запускал эту adb sideload lineage-16.0-20190719-nightly-natrium-signed.zipкоманду как пользователь ROOT из Ubuntu 19.04.

Вы выполнили adbпервый раз без root, поэтому сервер ADB работал как пользователь без полномочий root. Последующий запуск adbс root ничего не меняет. Смотрите документацию здесь .

Итак, теперь я пытаюсь предоставить root-доступ к ADB.

ADB Sideload должен запускаться в режиме восстановления, т.е. TWRP в вашем случае. В TWRP adbdвсегда работает как root. Root требуется только тогда, когда устройство работает под управлением основной ОС Android. Recovery и Android - две независимые ОС. Также не путайте ADB Daemon с ADB Server.


* Как видно из здесь , LineageOS addonsuтакже, похоже, работает только на userdebugсборках (в основном это пользовательские ПЗУ).

Спасибо за ответ. Я только что добавил "Edit-2" со скриншотами и страницу с инструкциями по установке LineageOS для Natrium (мой телефон) и Beryllium (еще один в качестве доказательства).
@Jags детские вопросы; Вы переводили устройство в режим боковой загрузки ADB, прежде чем делать это adb sideloadс ПК? Вы уверены, что убили сервер ADB перед запуском от имени пользователя root? Делать adb pushи adb shellработать? Если adb pushи перепрошивка на устройстве также не удалась, то это может быть проблема с вашей файловой системой, например, из-за умирающей eMMC. Можете ли вы монтировать файловые системы ( /data, /system, /vendor, /cache) вручную в режиме R/W без ошибок? По какой причине в recovery.log отображается ошибка 7?
(1) Да. После форматирования и расширенной очистки, в TWRP, расширенной и боковой загрузки, переведите его в режим боковой загрузки. Затем со стороны ПК загрузите adb sideload. (2) Да, всякий раз, когда я запускаю какой-либо критический процесс, сначала я вхожу в систему как root с помощью «sudo su», а затем продолжаю. (3) Как я упоминал ранее, это было 2 дня назад. Так что теперь я не могу запустить ни один тест. Поскольку в Windows 10 и Ubuntu 19.04 ничего не работало, я «чисто установил» MIUI 10, а затем Lineageos 19 сентября. В данный момент печатаю с того же телефона.
Самое главное, я здесь, чтобы узнать, как получить эту опцию «Управление корневым доступом». Это цель моего поста. Я здесь не для того, чтобы выяснить, почему установка Lineageos не удалась впервые за 2 с лишним года. Потому что я отформатировал, установил MIUI 10, снова отформатировал, и LineageOS 16 работает отлично... кроме root-доступа. Спасибо за вашу помощь.
Вот скриншот того, чего я пытаюсь добиться: i.imgur.com/l3owFfY.jpg
@Jags все, что я знаю об этом, уже есть в моем ответе. Чистая прошивка LineageOS. Не прошивайте Magisk. Вспышка addonsu. Вы должны получить эту опцию в Dev Options.
Хорошо, спасибо, на днях попробую.