Почему я не могу получить root-доступ из оболочки?


14
> adb shell
sh-4.1$ su
Permission denied

Я успешно рутировал свой телефон. Я знаю это, потому что я могу устанавливать приложения на SD-карту, и у меня есть программа SD Maid, которая может работать с правами root.


Установка приложений на SDCard не обязательно требует root, а SDMaid также (частично) работает без него, так что это не доказательство. С другой стороны, ваша цитата из оболочки, кажется, доказывает, что вы не добились успеха в своем рутировании. При проверке установленных приложений доступны ли SuperUser или SuperSU? Получаете ли вы такие запросы, как «SDMaid запрашивает корневые разрешения», которые вам нужно подтвердить?
Иззи

@ Изя, я получаю уведомления как SD Maid has been granted super root permissions? Кроме того, я только что установил play.google.com/store/apps/… и он спрашивает меня о подтверждении супер-пользователя, которое получено успешно.
Кшитиз Шарма

@ Изя, я бы умолял. Установка приложений на SDCard требует рутирования вашего телефона. Не могли бы вы указать на противоположный пример?
Кшитиз Шарма

Конечно: перейдите в Настройки-> Приложения-> Управление приложениями и пройдите по ним. Приложения, поддерживающие его, можно просто переместить, нажав соответствующую кнопку. Второе: взгляните на AppMonster , прямо на первом скриншоте, под «значком луны» «Sleepy Timer»: это приложение поддерживает App2SD без рута. AppMonster может переместить его (не требуя рута), и даже предложит это сделать. App2SD изначально поддерживается с Android 2.2. Следуйте по тегу FAQ: App2SD
Иззи

Для предыдущего комментария: ОК, так что все, что root работал. Опять же, пожалуйста, проверьте ваши приложения для SuperUser / SuperSU, на этот раз запустите приложение. В своей конфигурации он должен показывать вам, какие разрешения он сохранил; может быть, вы однажды случайно отметили «запомнить» и нажали кнопку «отказать» для оболочки adb. Если вы найдете соответствующую запись, просто удалите ее. В следующий раз вас снова спросят, затем обязательно нажмите нужную кнопку :)
Иззи

Ответы:


14

От сюда :

Вам может потребоваться активировать root adb из меню настроек разработчика. Если вы запустите adb root из строки cmd, вы можете получить:

root-доступ отключен настройками системы - включить в настройках -> параметры разработки

root-доступ отключен настройками системы - включите в настройках -> параметры разработки. После активации опции root (только ADB или Apps и ADB) adb перезапустится, и вы сможете использовать root из строки cmd.


5
Этот параметр доступен не во всех ПЗУ (не смог найти его, например, в моем LG Optimus 4X , который, конечно, укоренен). ИМХО это специальность CyanogenMod.
Иззи

что ты знаешь об Android, чувак? > root-доступ отключен настройками системы - включить в настройках -> параметры разработки. После активации опции root (только для ADB или Apps и ADB) adb перезапустится, и вы сможете использовать root из строки cmd.
Низи

2

В Google Play есть приложение под названием ADBD Insecure от Chainfire . Это приложение позволяет вам запускать adbd в режиме root, если ваше устройство имеет root-права при запуске устройства ROM. Я только недавно узнал об этом приложении.

Версия в Google Play не является бесплатной, но есть бесплатная версия. Ссылка на бесплатную версию приведена в описании приложения в Google Play.

Что хорошего в этом приложении, оно работает со стоковыми ПЗУ, которые были укоренены. Если вы используете собственное ядро ​​или пользовательское ПЗУ, вам, вероятно, не понадобится это приложение. Но если вы все еще используете стоковую версию, только что укоренившуюся, то вы можете получить это приложение для своего устройства.

Adbd Insecure позволяет запускать adbd в режиме root, если ваше устройство имеет root-права. (Обратите внимание, что если вы используете собственное ядро, вполне вероятно, что оно уже реализует эту функцию)

Если вы используете на своем устройстве стандартное (изготовленное производителем телефона) ядро, есть вероятность, что adbd работает в «безопасном» режиме, даже если вы root. Это приложение позволяет вам запускать adbd в "небезопасном" режиме, который дает вам root-доступ в "оболочке adb", разрешает доступ к системным файлам и каталогам через "adb push / pull" и позволяет вам выполнить команду "adb remount", чтобы сделать Ваш / системный раздел доступен для записи.

введите описание изображения здесь


Я попробовал бесплатное приложение ADBD Insecure из оригинальной нити XDA на моем Oneplus 5 Nougat с root-доступом с Magisk, но это не помогло, а также нарушило подключение MTP в режиме отладки USB, пока телефон не был перезагружен.
Вадим

0

В настоящее время Magisk широко используется для укоренения.

Я обнаружил, что на моем Oneplus 5 (Oxygen OS, Nougat) было достаточно зайти в приложение Magisk Manager, открыть экран разрешений суперпользователя и включить Shell (com.android.shell) для решения проблемы отказа в разрешении adb su.


0

Включите root-доступ для adb из меню настроек разработчика. Затем подключите USB-кабель и введите:

adb root

Должно вернуться

restarting adbd as root

Теперь перезапустите оболочку

adb shell

Стандартный Android не предоставляет "root-доступ для adb" в Dev Options. adb rootвозможно только на userdebugПЗУ: почему «adb root» ничего не делает?
Ирфан Латиф
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.