Чому я не можу отримати кореневий доступ з оболонки?


14
> adb shell
sh-4.1$ su
Permission denied

Я успішно вкоренила телефон. Я знаю це, тому що я можу встановлювати програми на SD-карту, і у мене є програма під назвою SD Maid, яка здатна працювати з кореневими дозволами.


Встановлення програм на SDCard не обов'язково вимагає root, а SDMaid також (частково) працює без цього, тому це не підтвердження. З іншого боку, ваша цитата з шкаралупи, здається, підтверджує, що ви не встигли вкорінитись. Перевіряючи встановлені програми, чи є SuperUser або SuperSU? Чи отримуєте підказки на зразок "SDMaid вимагає кореневих дозволів", які потрібно підтвердити?
Izzy

@Izzy я отримую повідомлення як SD Maid has been granted super root permissions? Крім того, я щойно встановив play.google.com/store/apps/…, і він просить у мене підтвердження супер користувача, яке успішно надається.
Kshitiz Sharma

@Izzy Я б просив відрізнятися. Встановлення програм на SDCard вимагає вкорінення вашого телефону. Чи можете ви вказати на протилежний приклад?
Kshitiz Sharma

Впевнені: перейдіть у Налаштування-> Програми-> Керуйте програмами та пройдіться ними. Програми, що підтримують його, можна просто перемістити, натиснувши відповідну кнопку. Друге: Погляньте на AppMonster , прямо на першому екрані екрана, під "піктограмою місяця" "Сонного таймера": ця програма підтримує App2SD, без кореня. AppMonster може перемістити його (не вимагаючи root), і навіть запропонує зробити це. App2SD підтримується в основному з Android 2.2. Слідкуйте за тегом FAQ: App2SD
Izzy

Для попереднього коментаря: Гаразд, так повний ack, що корінь працював. Ще раз перевірте свої програми на SuperUser / SuperSU, цього разу запустіть програму. У своїй конфігурації він повинен дозволяти вам бачити, які дозволи він зберігав; можливо, ви один раз випадково перевірили "запам'ятати" і натиснули кнопку "відхилити" для оболонки adb. Якщо ви знайдете відповідний запис, просто видаліть його. Наступного разу вас знову запитають, тоді обов'язково натисніть правильну кнопку :)
Izzy

Відповіді:


14

Від сюди :

Можливо, вам потрібно буде активувати корінь adb у меню налаштувань розробника. Якщо запустити корінь adb з рядка cmd, ви можете отримати:

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

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


5
Цей параметр доступний не у всіх ПЗУ (не вдалося його знайти, наприклад, у моєму LG Optimus 4X , що, звичайно, вкорінено). ІМХО - це спеціальність CyanogenMod.
Izzy

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

2

У Google Play є додаток під назвою ADBD Insecure by Chainfire . Ця програма дозволяє запускати adbd в кореневому режимі, якщо ваш пристрій вкорінюється під час роботи пристроїв Stock ROM. Я нещодавно дізнався про цю програму.

Версія в Google Play не безкоштовна, але доступна безкоштовна версія. Посилання на безкоштовну версію пов’язано в описі програми в Google Play.

Що чудово в цьому додатку, він працює з корінними дисками, котрі вкорінені. Якщо ви користуєтеся власним ядром або користувальницьким ПЗУ, ця програма, ймовірно, не знадобиться. Але якщо ви все ще використовуєте фондовий ром, щойно вкоренився, можливо, ви захочете отримати цю програму для свого пристрою.

adbd Insecure дозволяє запускати adbd в кореневому режимі, якщо ваш пристрій вкорінений. (Зверніть увагу, що якщо ви користуєтеся власним ядром, цілком ймовірно, що воно вже реалізує цю функціональність)

Якщо на вашому пристрої використовується ядро ​​(створене виробником телефону), можливо, adbd працює в "захищеному" режимі, навіть якщо ви вкорінені. Цей додаток дозволяє запускати adbd в режимі "незахищений", який надає кореневий доступ у "adb shell", дозволяє отримати доступ до системних файлів і каталогів через "adb push / pull", а також дозволяє запустити команду "adb remount", щоб зробити ваш / системний розділ для запису.

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


Я спробував безкоштовний додаток ADBD Небезпечний з оригінальної XDA теми на моєму Oneplus 5 Nougat, корінням Magisk, але це не допомогло, а також порушило підключення MTP в режимі налагодження USB, поки телефон не перезавантажився.
Вадим

0

В даний час Magisk зазвичай використовується для вкорінення.

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


0

Увімкніть кореневий доступ для adb з меню налаштувань розробника. Потім підключіть кабель usb та введіть:

adb root

Це має повернутися

restarting adbd as root

Тепер перезапустіть оболонку

adb shell

Фондовий Android не надає "кореневого доступу для adb" в параметрах Dev. adb rootможливий лише на userdebugПЗУ: Чому "корінь adb" нічого не робить?
Ірфан Латиф
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.