Як я можу дізнатися, чи є у мене корінь?


37

Я намагався викорінити свій телефон (Samsung Intercept M910, але це, мабуть, не має значення).

Як я можу сказати, що я фактично успішно здобув корінь? Я запустив кілька додатків, для яких потрібен root, а деякі працюють, а деякі - ні, тому мені незрозуміло, отримав корінь чи ні.

Відповіді:


29

Використовуйте емулятор терміналів (популярний емулятор терміналів з безкоштовним / відкритим кодом - це Android Terminal Emulator , доступний у F-droid або Play Market ), відкрийте емулятор та введіть

su

ви дізнаєтесь із повідомленням, яке з’явиться після того, чи вкоренився телефон чи ні.

Редагувати:

Зараз є програма саме для цього: Root Checker


1
Популярний безкоштовний / відкритий емулятор терміналів - Android Terminal Emulator , доступний у F-droid або Play Market .
imz - Іван Захарящев

6
Що робити, якщо "su: не знайдено"? Це просто означає, що suутиліта не була встановлена ​​(або її немає в PATH), а не чи є у нас корінь ...
imz - Іван Захарящев

Я отримав "су: не знайдено". Але я все ще підозрюю, що телефон укорінений. Що я можу зробити зараз?
Лев


25

Підключіть телефон у режимі розробника через USB та запустіть оболонку ADB

adb shell

Якщо ви бачите a #на початку рядка, ваш телефон укорінений, якщо це $спроба виконати suкоманду, і якщо ви отримаєте #зараз, ваш телефон вкорінюється, але якщо ви отримаєте помилку, яку suнеможливо знайти, можливо, це ні, або suдвійкового просто відсутнє.

На ринку також є додатки, які перевіряють, чи ваш телефон укорінений.


2
Цього недостатньо. Якщо ви бачите "$" - підкажіть, що ви все одно можете підняти на корінь через su binary (набравши команду "su"), якщо ви успішно вкоренили свій телефон.
Потік

Так, забув, що деякі ПЗУ не мають root за замовчуванням. Гм, все, що ти хочеш, щоб я зараз змінив?
kyrias

7

На ринку є програма, яка називається Root Checker , яка може перевірити, чи ваш телефон укорінений, і якщо у вас встановлений BusyBox.


Хіба це не просто перевірити наявність бінарного?
Лев

Саме це означає бути «вкоріненим», це правильно встановити бінарний файл із встановленим бітом suid. Сума бінарних програм зазвичай постачається із програмою супроводу для керування дозволами, додатком Superuser, але це лише для зручності та зручності використання.
Лі Райан

Дякую @Lie Ryan, але з деяких інших коментарів схоже, що телефон все ще може бути вкорінений, навіть якщо немає субінарних даних. Це не правильно?
Лев

Будь ласка, дивіться цю тему з тієї причини, про яку я прошу: android.stackexchange.com/questions/127347/…
Лев

1
@Leo: якщо бути точним, то немає різного стану між укоріненими та не вкоріненими пристроями в базовій системі Linux. Усі Linux, включаючи не вкорінений Android, мають встановлений системний виклик, який є основним механізмом, який використовуються програмами Linux для отримання підвищених привілеїв. Налаштування власного бінарного файлу вимагає підвищених привілеїв. Багато системних додатків Android на не вкорінених пристроях працює з підвищеними привілеями (наприклад, adbd, оновлення системи), але вони розширюються лише для дуже конкретних цілей. su - пільгова програма, яка дозволяє викликати інші програми з підвищеними пільгами.
Лі Райан

4

Ви повинні побачити додаток "Superuser" у лотку додатків.

Більшість методів вкорінення додають цю програму для управління правами суперпользователя: вона з’явилася для мене, коли я вкоренила своє Бажання.

Не все так: просто спробуйте встановити та запустити Superuser з ринку . Якщо це не вдасться, ви не вкоренилися :-)


Це неправильно, додаток Superuser повинен бути встановлений вручну після вкорінення, але він може бути встановлений автоматично, якщо ви використовуєте програму вкорінення одним клацанням.
kyrias

@Demizide: Я оновлював вас, коли ви заявляли про те, як ви заявляли . Це залежить від того, як ви викорінюєте це, звичайно: деякі методи додають його автоматично, як це сталося зі мною.
gbn

Гаразд, подумайте, ви могли б оновити його ще раз, щоб я міг скасувати протокол?
kyrias

1
Ви можете встановити Superuser на не вкоріненому пристрої просто добре. Він просто нічого не зробить без suдвійкового файлу (і скаржиться, що його потрібно "оновлювати" щоразу, коли ви його запустите). Наявність Суперусера насправді не означає, що ти вкоренився; це працює так, але повідомлення про помилку оновлення не говорить "не вдалося оновити, тому що ви не root" або щось подібне (і ви можете натиснути "Скасувати", і воно проходить).
eldarerathis

0

Використовуйте наступні команди з бібліотеки RootTools .

    RootTools.isRootAvailable();

або

    RootTools.RootTools.isAccessGiven();

Чи перевіряють ці дзвінки, чи справді пристрій вкорінено? Або вони просто перевіряють наявність su binary (як здається, це роблять усі програми для кореневої перевірки)? Чи є якийсь додаток, що використовує ці дзвінки?
Лев

0

Окрім того, що всі згадували, одним надзвичайно простим способом було б також встановлення програми з Google Play, для якого потрібен кореневий доступ. Я пропоную DroidWall, який є обов'язковим брандмауером для Android. Встановіть його та натисніть застосувати правила. Якщо не вкорениться, воно вам скаже, і не вдасться застосувати правило.


0

Ви можете завантажити програму під назвою "Root Checker", яка отримує кореневий доступ до вашого пристрою та перевіряє, чи він укорінений чи ні. Ви легко можете зрозуміти таким чином, коріння воно чи ні. Я можу зрозуміти таким чином, і це надзвичайно просто.

Існує дуже багато додатків під назвою Root Checker, але це не має значення, просто встановіть його, і ви готові йти.

Після цього ви можете зрозуміти, коріння воно чи ні.

Якщо він укорінений, ви можете використовувати кожну програму, для якої потрібен корінь, із пристроєм, який ви використовуєте.

Якщо ваш пристрій не вкорінений, відкрийте встановлений проект відновлення (на пристроях Samsung одночасно натисніть гучність + живлення + домашня кнопка) і звідти витріть дані. Потім перезавантажте телефон з головного меню проекту відновлення і натисніть кнопку збільшення гучності + живлення + домашня кнопка, щоб відкрити меню завантаження.

ПОПЕРЕДЖЕННЯ: МЕТОД, ПОЯСНЕНИЙ ТУТ, ТІЛЬКИ РОБОТИ З УСІМ САМОТЕЛЕФОН. І НЕ БУДЕ РОБОТИ З ІНШИМИ. МОЖЕТЕ РОБОТИ, але НЕ Впевнені в ньому. ВИ МОЖЕТЕ ЗНАЙТИ БІЛЬШЕ ІНФОРМАЦІЇ ПРО ЦЕЙ СПРАВІ НА ІНШИХ САЙТАХ

Підключіть свій пристрій до комп’ютера Windows і за допомогою Odin ви можете прошивати на пристрій необхідні файли, включаючи SuperSU. А після того, як вони просто перезавантажуються та чують, ваш пристрій успішно вкорінюється.

Макс Лі може допомогти вам на своєму веб-сайті (highonandroid.com), який готує круті статті про вкорінення.

Ви також можете віддати перевагу The Unlockr, який можна знайти на youtube та theunlockr.com.

Обоє віддають перевагу приємним відео, яке може вам бути корисним.


-1

Це легко. Просто завантажте кілька відомих кореневих програм, які потребують додатків (додатки, які потребують root), наприклад: - резервне копіювання титану, supersu тощо та переконайтеся, що вони працюють чи ні. Якщо вони працюють правильно, то ви отримали корінь. Якщо вони не працюють, це означає, що root не працює.


2
Якщо вони не працюють, це може мати й інші причини - наприклад, несумісність із вашим пристроєм, помилки в додатку. Звичайно, якщо всі вони зазнають невдач, це може бути вагомим показником - але довгий шлях. Використання кореневої перевірки або термінальної програми (як це пропонується у пов'язаних відповідях) є набагато швидшими та надійнішими методами.
Іззі

Перевірка кореня також є хорошим методом, але, відповідно до деталей запитань, деякі програми спрацювали, а деякі не так, ймовірно, коренева перевірка також може вийти з ладу
Aditya Sinha

1
Більш ймовірно, що вони вийшли з ладу з іншої причини: коренева перевірка, або особливо запущена suкоманда, має значно меншу складність, і, таким чином, набагато менше шансів вийти з ладу.
Іззі

Так, ви повинні завантажити root checker basic або pro.
Aditya Sinha

-1

Для розробників та надання імхо, що більше включає тест, adbвиконайте наступне:

[you@yourbox]$ adb shell
[root&adbshell]$ mount -o rw,remount /system
[root&adbshell]$ echo $?
 0
[root&adbshell]$
[root&adbshell]$ mount | grep system
 /dev/block/by-name/system /system ext4 rw,seclabel,relatime,data=ordered 0 0
[root&adbshell]$ ls /dev/block/by-name/system -la  
 lrwxrwxrwx root     root              2016-02-23 19:33 system -> /dev/block/nandd
[root&adbshell]$ ls /dev/block/nandd -la 
 brw------- root     root      93,  24 2016-02-23 19:33 nandd

моменти:

  1. Швидше за все, підказка оболонки adb скаже вам, root@[something]що зрозуміло
  2. але просто для перевірки ми намагаємось повторно /systemперечитати читання-запис rw(те, що потребує кореня)
  3. перевірка , що результат розроблений тобто без будь - яких помилок echo $?виходів0
  4. потім все ще перевіряє / слідкує за тим, щоб /systemврешті-решт знаходився на блоковому пристрої /dev/block/nanddв прикладі, до якого, як повідомляється, бути доступним лише користувачroot

Я знаю, що це варіант "лише для просунутих користувачів", і оголошення найкраще схоже на іншу відповідь, запропоновану @kyrias, але я думаю, що ця є трохи суміснішою, mountна відміну від suбільшої ймовірності.

Також я хотів би припустити, що всебічне випробування rootnessпередбачає використання rootповноважень та резервного копіювання вмісту / системи та передачі її за допомогою альтернативної системи для випробування. Інакше є зміна adbd лише підробляє вас інформацією, завжди краще переконатися, що ви можете перевірити rootповноваження, фактично зробивши щось, що видно на кількох каналах :)


Ви знаєте, що ви можете просто виконати su -c 'id'або виконати, suза якими слідує id. Якщо ви не бачите uid=0 gid=0у виході, то пристрій повністю не вкорінено або, принаймні, не має належних коренів.
Firelord

Подивіться @Firelord - все su, як ви пропонуєте, може бути "простішим", але, як було зазначено, ми не можемо припустити, що suце всі пристрої для початку. Рішення пропонується альтернативним способом і не прагне бути "найпростішим способом".
humanityANDpeace
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.