/4te.me
Быстроman как получить root-права на Android смартфоне. Я буду использовать OnePlus 3 и Android 8.0, но инструкция должна подойти и к другим устройствам.
Предисловие
Все действия вы выполняете на свой страх и риск. При неправильной последовательности, можно потерять данные или превратить телефон в кирпич. Также, важно понимать, что рутованный девайс, кроме некоторых удобств, несет в себе риски безопасности. Будьте внимательны.
Подготовка
Для начала, надо на компьютер установить adb и fastboot. Это утилитки из Android SDK для работы с подключенным по USB телефоном.
Для Windows есть удобный установщик adb, fastboot — https://forum.xda-developers.com/showthread.php?t=2317790
Вот здесь официальные дистрибутивы под все платформы — https://developer.android.com/studio/#downloads
Далее качаем TWRP. Это что-то типа livecd для телефона. Образ некой системы, в которой загрузится телефон, и в ней мы установим приложение Magisk.
TWRP (я брал версию 3.1.0-0-twrp.img) — https://dl.twrp.me/twrp/
Если у вас OnePlus, вот TWRP для них — https://eu.dl.twrp.me/oneplus3/ (надо брать этот twrp если вылетает ошибка dtb not fount)
Magisk — это open source приложение, которое дает рут права на телефон, и позволяет скрывать наличие рута от других приложений, чтобы работал Android Pay. Также, обновления системы, которые прилетают “по воздуху”, не должны сломаться. Лучше использовать Magisk, а не SuperSU.
Теперь включим режим разработчика на телефоне. Для этого в настройках, в разделе “О телефоне”, надо несколько раз нажать на “Номер сборки”. После раза 10-го, появится сообщение “Теперь вы разработчик”, и в настройках появится новый пункт “Для разработчиков”.
Разблокировка загрузчика
Разблокировка загрузчика удаляет все данные с телефона и sd-карты
Также, разблокировка загрузчика, без установленного далее Magisk, может сломать Android Pay.
В настройках “Для разработчиков” включаем “Отладка по USB”, “Заводская разблокировка” и “Варианты перезагрузки”
Загружаемся в fastboot mode. Для этого зажимаем кнопку выключения, выбираем “Перезагрузка” и далее “Загрузчик” Второй способ — выключить телефон, зажать клавишу громкости вверх и клавишу включения. Через несколько секунд появится fastboot mode
Подключаем телефон по USB-кабелю. И проверяем что устройство доступно в системе. Для этого выполняем:
ПОСЛЕ ЭТОЙ КОМАНДЫ ТЕЛЕФОН ПЕРЕЗАГРУЗИТСЯ И ВСЕ ДАННЫЕ БУДУТ УДАЛЕНЫ. Делайте бэкапы всех данных до этого шага.
Теперь загрузчик разблокирован.
Получение root
- Подключаем телефон к компьютеру в режиме передачи файлов MTP
- Заливаем на телефон zip-файл Magisk, скачанный выше из github
- Загружаемся в TWRP. Для этого перезагружаем телефон в fastboot mode (см. пункт 2 инструкции выше как разблокировать загрузчик) и на компьютере выполняем:
Все, теперь с помощью Magisk Manager можно выдавать root-овые права приложениям, которые их запрашивают, а также скрывать от других приложений, что этот девайс рутованный, чтобы не сломать Android pay.
Записки программиста
четверг, 16 февраля 2012 г.
Android root из Linux
Это руководство для тех, кто хочет получить права root на своем Android телефоне.
[Предварительное рутование может и не потребоваться при переходе непосредственно на нестандартные прошивки, такие как: CM7 или MIUI через Odin/Heimdall, в любом случае вам потребуется ADB (пункты 1-4)]Bus 001 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd
Для нашего примера » идентификатор производителя Vendor ID > » заменяем «04e8». Не трогаете кавычки но заменяете и все, что в нутри.
- Сохраните файл по этому пути /etc/udev/rules.d/51-android.rules
- И ещё по этому пути /lib/udev/rules.d/51-android.rules
[Примечание: Вообще вам нужен первый из них, но он может отличаться в разных системах]
- В терминале, наберите ls /etc/udev/rules.d/51-android.rules дабы убедиться, что файл на месте, аналогично для второго пути.
- Перезапустите udev или перезагрузите компьютер чтобы изменения вступили в силу
[Примечание: в некоторых руководствах при настройке првил udev рекомендуется устанавливать права доступа 0666 которые открывают доступ к файлу всем. Здесь мы назначаем доступ одному пользователю, которому это нужно, так будет безопаснее. Приоритет правила установили 51, это не принципиально, можно назначить и другой.]
4.Проверяем что получилось
- В терминале наберите » lsusb «, как делали это ранее
- Одна из строк должна быть похожа на:
Bus 001 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd
- В данный момент нас интересуют номера после Bus и Device, которые, возможно, изменились если вы перезагрузили компьютер.
- В терминале выполните » ls -l /dev/bus/usb/001/002 » ВНИМАНИЕ 001/002 это Bus/Device из примера выше, замените Bus/Device на цифры из вашего вывода команды » lsusb «.
- Если в результате команды имя пользователя и группа отличаются от «root root» можно продолжать дальше. Если это не так, перечитайте и повторите шаги 2 и 3.
- *Убедитесь что ваш телефон все еще в режиме Отладка по USB . Должен быть красный треугольник с восклицательным знаком в строке состояния вашего телефона (зависит от темы и версии Android).
- В терминале наберите » sudo adb devices » [*sudo понадобится только при первом запуске adb.]
Вы должны увидеть свой телефон в списке.
5. Загрузка Samsung Fascinate Root Package
Эти файлы необходимы, хотя драйвера не нужны для Linux.
6. Распаковка 4-х файлов в
/bin
Эту директорию мы создали в шаге 1, там уже должен быть файл adb. Вы можете распаковать куда-нибудь загруженный архив и поместить необходимые файлы в
/bin (это su, rage.bin, busybox, Superuser.apk).
/bin
В терминале наберите » cd
/bin «, а затем » ls «, должно быть 5 файлов.
8. Перенос файлов на телефон и запуск root:
Выполните каждую из следующих строк по отдельности в терминале, скопируйте и встаьте (жмите Enter после вставки каждой строки):
./adb push su /sdcard/su
./adb push rage.bin /data/local/tmp/rage.bin
./adb push busybox /sdcard/busybox
./adb shell
[Примечание: Эта комманда определит ограничение процесса, найдет номер процесса adb, а затем запускает процессы до исчерпания этого ограничения. Вы быстро вернетесь в строк сприглашением $, но ЭТО НЕ ВСЕ. ЖДИТЕ пока не выведется что-то похожее на «[+] Forked 3705 childs.» и вы вернетесь в свою домашнюю директорию.]
9. Зафиксируем права root
- В терминале вернитесь в директорию
/bin введите » ./adb shell «
На этот раз вы должны получить приглашение # вместо $. Это означает, что теперь вы удаленно зашли на телефон как root.
mount -t rfs -o remount,rw /dev/block/stl9 /system
cd /system/xbin
cat /sdcard/su > su
cat /sdcard/busybox > busybox
chmod 4755 su
chmod 4755 busybox
exit
./adb install Superuser.apk
/bin/adb shell »
Вы должны получить приглашение $
Выполните » su »
На телефоне должно появиться всплывающее сообщение где запрашивается подтверждение использования прав суперпользователя. После того, как вы разрешите, приглашение должно измениться на #
Это сообщение будет появляться всякий раз, когда вы устонавливаете и запускаете программу требующую привелегий пользователя root.
Теперь запустите приложение SuperUser, оно должно показать список программ имеющих привелегии root пользователя.
Получаем root на Android из Ubuntu
Для многих искушённых пользователей ОС Android после покупки нового коммуникатора встаёт вопрос как поставить root. Это логично, без root не доступны многие полезные функции, нет доступа к файлам системы, не поставить A2SD и прочие радости жизни. И, соответственно начинаются поиски способов получения root на Android. Сегодня я вам расскажу способ получения root под Ubuntu Linux.
Нам поможет небольшое приложение unrevoked. Его прелесть в том, что есть поддержка Linux, причём без ограничений. Так же данная программа может установить свой recovery, либо указанный в настройках. Что же такое recovery?
recovery (рекавери) — это некий режим загрузки в урезанную ОСь для неких манипуляций с аппаратом
То есть с помощью рекавери можно мы и будем устанавливать различные альтернативные прошивки и дополнения к ним.
Итак, начнём. Для начала скачаем программу с официального сайта. Затем переходим в папку с программой и запускаем её:
Root android device using linux
A ndroid root из Linux
Статья от 16 февраля 2012 г.
Это руководство для тех, кто хочет получить права root на своем Android телефоне.
0. П режде чем начнем сделаем р е зервную копию данных, на всякий случай.
- Скачайте Android-SDK для linux. [Это пакет инструментов для разработчиков под Android]
- Распакуйте директорию /tools на рабочий стол. [Возможно для этого понадобится установить архиватор 7zip. Он есть в репозиториях Ubuntu.]
- Создайте директорию «bin» и поместите туда программу ADB:
2. Сбор необходимой информации
- На вашем телефоне перейдите Насторйки=>Приложения=>Разработка (Settings=>Applications=>Development) и включите опцию Отладка по USB(USB debugging)
- Подключите ваш телефон к компьютеру. [*В режиме телефона, не в режиме USB накопителя]
- В терминале на компьютере выполните » lsusb » без кавычек
- Одна из строк в результате должна быть похожа на что-то вроде (в зависимости от производителя вашего телефона):
Bus 001 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd
- Запишите или запомните первые 4 символа после ID. Это идентификатор производителя (Vendor ID, в нашем примере 04e8). Номера Bus и Device будут разными всякий раз при переподключении телефона к компьютеру или после его перезагрузки.
- В терминале выполните » id » без кавычек, эта команда покажет имя и группу пользователя под которым вы вошли в систему (если вы не уверены, что знаете их точно)
3. Установка првила Udev для работы ADB
- Откройти любимый текстовый редатктор с правами root. Например, в терминале Kubuntu наберите » kdesudo kate «.
- Вставьте следующую строку без переносов в редактор и измените как указано ниже:
SUBSYSTEM==»usb», SYSFS
Для нашего примера » идентификатор производителя Vendor ID > » заменяем «04e8». Не трогаете кавычки но заменяете и все, что в нутри.
- Сохраните файл по этому пути /etc/udev/rules.d/51-android.rules
- И ещё по этому пути /lib/udev/rules.d/51-android.rules
- В терминале, наберите ls /etc/udev/rules.d/51-android.rules дабы убедиться, что файл на месте, аналогично для второго пути.
- Перезапустите udev или перезагрузите компьютер чтобы изменения вступили в силу
4. Проверяем что получилось
- В терминале наберите » lsusb «, как делали это ранее
- Одна из строк должна быть похожа на:
Bus 001 Device 002: ID 04e8:681c Samsung Electronics Co., Ltd
- В данный момент нас интересуют номера после Bus и Device, которые, возможно, изменились если вы перезагрузили компьютер.
- В терминале выполните » ls -l /dev/bus/usb/001/002 » ВНИМАНИЕ 001/002 это Bus/Device из примера выше, замените Bus/Device на цифры из вашего вывода команды » lsusb «.
- Если в результате команды имя пользователя и группа отличаются от «root root» можно продолжать дальше. Если это не так, перечитайте и повторите шаги 2 и 3.
- *Убедитесь что ваш телефон все еще в режиме Отладка по USB . Должен быть красный треугольник с восклицательным знаком в строке состояния вашего телефона (зависит от темы и версии Android).
- В терминале наберите » sudo adb devices » [*sudo понадобится только при первом запуске adb.]
Вы должны увидеть свой телефон в списке.
Замечание. Предварительное рутование может и не потребоваться при переходе непосредственно на нестандартные прошивки, такие как: CM7 или MIUI через Odin/Heimdall, в любом случае вам потребуется ADB (см. пункты 1-4)
5. Загрузка Samsung Fascinate Root Package
Эти файлы необходимы, хотя драйвера не нужны для Linux.
6. Распаковка 4-х файлов в
/bin
Эту директорию мы создали в шаге 1, там уже должен быть файл adb. Вы можете распаковать куда-нибудь загруженный архив и поместить необходимые файлы в
/bin (это su, rage.bin, busybox, Superuser.apk).
/bin
В терминале наберите » cd
/bin «, а затем » ls «, должно быть 5 файлов.
8. Перенос файлов на телефон и запуск root:
Выполните каждую из следующих строк по отдельности в терминале, скопируйте и встаьте (жмите Enter после вставки каждой строки):
./adb push su /sdcard/su
./adb push rage.bin /data/local/tmp/rage.bin
./adb push busybox /sdcard/busybox
./adb shell
$ , это означает, что мы удаленно подключились к телефону]
chmod 0755 rage.bin
[Примечание: Эта комманда определит ограничение процесса, найдет номер процесса adb, а затем запускает процессы до исчерпания этого ограничения. Вы быстро вернетесь в строк сприглашением $, но ЭТО НЕ ВСЕ. ЖДИТЕ пока не выведется что-то похожее на «[+] Forked 3705 childs.» и вы вернетесь в свою домашнюю директорию.]9. Зафиксируем права root
- В терминале вернитесь в директорию
/bin введите » ./adb shell «
На этот раз вы должны получить приглашение # вместо $ . Это означает, что теперь вы удаленно зашли на телефон как root.
mount -t rfs -o remount,rw /dev/block/stl9 /system
cd /system/xbin
cat /sdcard/su > su
cat /sdcard/busybox > busybox
chmod 4755 su
chmod 4755 busybox
exit
./adb install Superuser.apk
10. Убедимся что получили права root
- Перезапускаем телефон
- В терминале выполняем «
/bin/adb shell «
Вы должны получить приглашение $
Выполните » su «
На телефоне должно появиться всплывающее сообщение где запрашивается подтверждение использования прав суперпользователя. После того, как вы разрешите, приглашение должно измениться на #
Это сообщение будет появляться всякий раз, когда вы устонавливаете и запускаете программу требующую привелегий пользователя root.
Теперь запустите приложение SuperUser, оно должно показать список программ имеющих привелегии root пользователя.