Получение роот прав с помощью утилиты adb. Замена системных файлов Android с помощью adb

Способ может быть полезен в том случае, если «уже ничего не помогает», доступа к Root Explorer нет или телефон вообще не может загрузиться. В моем случае, пришлось в «боевом» режиме восстанавливать удалённый по глупости SystemUI.apk. При этом на телефоне что-то делать можно было только в доли секунды между нажатием кнопки «ОК» на предыдущем окне с ошибкой и появлением следующего такого же окна. Перепрошиваться не хотелось, потому пришлось срочно осваивать adb.

Итак, для того, чтобы подключить свой гуглофон к adb, вам нужно:

1) Android SDK для Вашей системы (здесь - на примере GNU/Linux Ubuntu)
2) Android SDK Platform-tools (устанавливаются выбором соответствующей галочки в Android SDK)
3) В «Параметры - Программы - Отладка» должна стоять галочка на «Отладка по USB»
4) Подключить телефон к USB
5) В моём случае пришлось сделать еще две вещи:
указать ID производителя телефона idVendor (его можно найти ):
#echo SUBSYSTEM=="usb", SYSFS{idVendor}==" 0bb4 ", MODE="0666" > /etc/udev/rules.d/51-android.rules
#chmod a+r /etc/udev/rules.d/51-android.rules
где 0bb4 заменяем на код своего производителя, после чего перезапустить adb
#adb kill-server
#adb start-server

Итак, все установлено и подключено, вы добавили путь к platform-tools в переменную $PATH своей операционной системы или перешли в эту папку с помощью команды cd. По команде «adb devices» должен выдавать некий номер и справа от него «device». Это значит, что adb видит телефон и может с ним работать. Если вместо «device» что-то другое или вообще «List of devices attached» - проблема где-то на 4-5 шаге.

Далее вам нужно поместить системный файл, который вы хотите установить, в папку platform-tools. То есть запасная копия системного файла должна быть приготовлена заранее или скопирована с аналогичного телефона.

После этого можно закинуть системный файл в /system/app такой последовательностью команд:

$adb push YourFile.apk /data/Yourfile.apk
$adb remount
$adb shell
$su
#cp -f /data/YourFile.apk /system/app/Yourfile.apk
#chmod 644 /system/app/YourFile.apk
#exit
$exit
$adb reboot
где YourFile.apk - имя вашего системного файла, причем регистр букв имеет значение.
После последней команды Ваш телефон должен перезагрузиться уже с новыми файлами.
Если на команду «adb remount» Вы получаете ответ «remount failed: Operation not permitted», то попробуйте вместо нее после «su» ввести "#mount -o rw,remount -t yaffs2 /dev/block/mtdblock3 /system".

P.S.: В линуксе, если platform-tools не добавлена в $PATH, вместо «adb» нужно писать "./adb".

В этой статье команды, которые я запускал от имени обычного пользователя обозначены символом $ в начале строки, от имени root - символом #.

ADB, или Android Debug Bridge – это консольное приложение для ПК, с помощью которого можно управлять устройством на базе Android прямо с компьютера. Выглядит это так: сначала на компьютер устанавливаются инструментарий ADB и драйвера для Android, потом мобильное устройство подключается к ПК через USB-кабель в режиме отладки, и, наконец, после запуска ADB в консоли (командной строке) выполняются специальные команды, инициирующие те или действия с гаджетом. Подробная информация о принципе работы самого средства отладки представлена на официальном сайте разработчика, поэтому мы останавливаться на этом не будем, а сразу перейдем к возможностям ADB и способам его установки на компьютер.

Что позволяет делать ADB?

Для начала укажем зачем вообще нужен ADB. С его помощью можно:

  • Перезагружать устройство в различных режимах;
  • Обмениваться файлами/папками с телефоном;
  • Устанавливать/удалять приложения;
  • Устанавливать кастомные прошивки (в том числе, TWRP Recovery);
  • Производить ;
  • Выполнять разного рода скрипты.

Инструмент ADB обычно устанавливается в связке с консольным приложением Fastboot.

Установка ADB и Fastboot из пакета Android SDK

Этот способ предусматривает использование официального средства разработки и тестирования приложений Android Studio. Переходим на страницу https://developer.android.com/studio/index.html и находим заголовок «Get just the command line tools». Ниже скачиваем архив SDK tools для Windows (перед загрузкой соглашаемся с условиями использования).

Распаковываем архив на диск С. В нашем случае файлы были извлечены в папку sdk-tools-windows-3859397 .

Заходим в директорию, а потом переходим в каталог tools/bin . Здесь нас интересует файл sdkmanager , который и поможет установить ADB и Fastboot на компьютер.

Теперь необходимо открыть папку с sdkmanager, для чего в консоли следует выполнить команду cd C:\sdk-tools-windows-3859397\tools\bin , где C:\sdk-tools-windows-3859397\tools\bin – путь к файлу sdkmanager.

Если вы распаковали Android SDK не на диск С, а в какое-то иное место, то полный адрес можно будет узнать с помощью верхней строки Проводника (кликаем по конечной папке правой кнопкой мыши и жмем «Копировать адрес»).

Итак, мы перешли в tools\bin и теперь нам нужно выполнить команду sdkmanager «platform-tools» , которая установит пакет Platform-tools, содержащий файлы ADB и Fastboot.

В ходе установки ознакомьтесь с лицензионным соглашением и нажмите Y для завершения операции.

Если все прошло как надо, в корневой папке Android SDK появится каталог platform-tools с необходимыми файлами adb.exe и fastboot.exe .

Minimal ADB and Fastboot

Второй способ еще более простой. На форуме разработчиков Xda Developers можно скачать пакет Minimal ADB and Fastboot со всеми необходимыми файлами. Для этого заходим на страницу https://forum.xda-developers.com/showthread.php?t=2317790 и, кликнув по ссылке, загружаем установочный exe-файл.

Запускаем его и следуем инструкциям.

Мы установили Minimal ADB and Fastboot в корень того же диска С.

В принципе, на этом все. Осталось проверить наличие файлов.

Проверка работы ADB и Fastboot

После установки приложений любым из приведенных способов необходимо удостовериться в корректности работы утилит. Для этого через командную строку заходим в папку с файлами adb и fastboot (команда cd C:\sdk-tools-windows-3859397\platform-tools или cd C:\Minimal ADB and Fastboot ), а затем выполняем команду adb help . Она должна вывести версию установленного Android Debug Bridge и список команд ADB. Если вы видите примерно то же, что изображено на приведенном ниже скриншоте, значит все работает правильно.

Теперь следует подключить к ПК мобильное устройство и проверить, увидит ли его приложение ADB. Подсоединяем телефон (или планшет) к компьютеру с помощью USB-кабеля, выставляем в настройках режим подключения MTP (обмен файлами) и заходим в раздел Настройки – Для разработчиков .

Если такого пункта в настройках нет, то переходим на страницу «О телефоне» и семь раз кликаем по строке с номером сборки.

Режим разработчика будет активирован, и раздел «Для разработчиков» станет доступным. Заходим в него и включаем опцию «Отладка по USB».

После всех этих манипуляций с гаджетом в командной строке Windows вводим команду adb devices . Она выведет информацию о подключенном устройстве примерно в таком формате, как на скриншоте.

Таким образом, мы протестировали ADB и Fastboot и убедились, что Android Debug Bridge нормально функционирует, а, значит, теперь можно управлять телефоном через компьютер.

Если связь с устройством наладить не получается, то необходимо проверить наличие и корректность установки драйверов Андроид. Для этого при включенном режиме отладки заходим в «Диспетчер устройств» и смотрим, нет ли восклицательных знаков в ветке «Устройства USB» пункт «ADB Interface» (может называться немного по-другому).

При обнаружении неполадок пробуем переустановить драйвера. Скачать их можно на сайте производителя телефона или по адресу https://adb.clockworkmod.com/ .

Надеемся, что статья была для вас полезна.

Многие из вас не раз сталкивались с ситуацией, когда для получения root прав на Android планшете или смартфоне, установки новой прошивки, восстановления системы и прочих вещей, нужно было подключать его к компьютеру и выполнять ряд команд adb или fastboot, через окно командной строки (терминала).

Большинство вводят эти команды, не понимая, что они означают, просто следуя найденной в сети инструкции. И если вы хотите получить более полное представление о том, что происходит при их выполнении, то сегодня мы познакомимся с десяткой основных команд, которые должен знать каждый продвинутый пользователь Android.

Но перед тем как чем начать ознакомление с этими командами, напомню, что прежде чем ваш планшет или смартфон смог их выполнять, вы должны позаботиться, чтобы на вашем компьютере был установлен Android SDK , а на самом планшете или смартфоне, в меню его настроек была включена опция «Отладка USB ».

Как установить Android SDK, содержащий в себе программы adb и fastboot, читайте в этом материале .

Также напомню, что в Android 4.2 и выше, пункт «Отладка USB» скрыт, и как получить к нему доступ, вы можете почитать .

Для тех, кто забыл, как запустить окно командной строки в Windows напомню, что проще всего это сделать, нажав на «Пуск», после чего в окне поиска нужно будет ввести cmd и нажать клавишу «Enter».

После того, как все подготовительные работы закончены, можно подключать устройство к компьютеру с помощью USB кабеля и приступать к изучению команд.

1. Команда adb devices

Это, наверное, самая главная из всех десяти команд, о которых будет идти речь. С помощью неё мы можем узнать, видит ли компьютер ваше Android устройство, и если видит, то может ли он общаться с ним через команды терминала.

Если все нормально, то после ввода команды adb devices в окне командной строки Windows или терминала Linux, вы должны увидеть строку с текстом List of devices attached, после которой будет строка, состоящяя из серийного номера вашего устройства и его состояния - offline или online:

Состояние offline означает, что устройство находится в спящем режиме. Состояние online сигнализирует о том, что планшет или смартфон готов выполнять ваши команды.

2. Команда adb push

С помощью команды adb push вы можете копировать файлы на свой планшет или смартфон. При этом вы должны указать путь к папке, в которую вы хотите поместить файл на устройстве и папке на компьютере, откуда будет копироваться файл. Второй путь указывать не обязательно, если файл расположен в той же папке, где находится программа adb.

Вот пример копирования видеофайла superfreak.mp4 с компьютера на устройство, в папку /sdcard/Movies с помощью команды adb push superfreak.mp4 /sdcard/Movies/

Для пользователей Windows хочу напомнить, что в Android при указании пути к файлам и папкам используется прямой слэш - /, а не обратный, как вы привыкли.

3. Команда adb pull

Если команда adb push используется для передачи файлов на Android устройство, то adb pull используется для копирования файлов с устройства на компьютер. Так же как и в предыдущем случае, вы должны указать путь, откуда вы хотите взять файл на устройстве и путь, куда вы хотите этот файл поместить на компьютере. Второй путь указывать не обязательно, если вы хотите, чтобы файл попал в папку, из которой вы запускали программу adb.

Вот пример копирования файла superfreak.mp4 из папки /sdcard/Movies/ вашего планшета или смартфона на рабочий стол Windows 8 пользователя Jerry, C:\Users\Jerry\Desktop

Если вы хотите, чтобы файл попал в папку, из которой вы запускали adb, просто введите команду adb pull /sdcard/Movies/superfreak.mp4

4. Команда adb reboot

Эта команда часто используется в процессе получения root прав или установке нового программного обеспечения, когда нужно принять те изменения, которые мы сделали на нашем устройстве. После того, как вы введете команду adb reboot, ваш планшет или телефон перезагрузится.

Также эта команда важна тем, что её можно размещать внутри скриптов, что позволяет перезагружать устройство после выполнения всех необходимых операций автоматически.

5. Команды adb reboot-bootloader и adb reboot recovery

С помощью adb можно не просто перезагружать Android устройство, но и перезагружать его в загрузчик (bootloader). Этот режим нужен для того, чтобы мы могли разблокировать загрузчик, что необходимо для получения root прав и дальнейшей установки альтернативных прошивок.

Некоторые устройства можно загрузить в bootloader с помощью определенной комбинации клавиш при их включении, но зачастую команда adb reboot-bootloader - это единственный способ получить доступ к загрузчику.

Точно также, программу adb можно использовать для получения доступа к меню восстановления планшета или смартфона или рекавери (recovery). Это можно сделать с помощью команды adb reboot recovery

6. Команда fastboot devices

Если вы перегрузили свой планшет в режим загрузчика (bootloader) то он перестанет принимать команды adb. В этом режиме с устройством мы можем общаться с помощью программы fastboot.

С помощью команды fastboot devices вы можете узнать, может ли ваше устройство принимать команды от этой программы в режиме загрузчика. Так как fastboot является очень мощным инструментом, некоторые производители Android устройств не предоставляют доступа для этой программы в режиме загрузчика.

Так же, как и в случае с adb, после ввода команды fastboot devices вы должны увидеть серийный номер вашего устройства.

Зачастую причиной неработоспособности fastboot является отсутствие необходимых Windows драйверов вашего устройства.

7. Команда fastboot oem unlock

Некоторые производители (например, HTC или Asus) выпускают специальные утилиты, позволяющие разблокировать загрузчик их планшетов и смартфонов, после чего на них можно будет устанавливать альтернативные рекавери, такие как ClockworkMod или TWRP и прошивки от независимых разработчиков (кастомные прошивки).

Однако во многих случаях, разблокировать загрузчик Android устройства можно с помощью программы fastboot. Сделать это очень просто – когда ваш планшет или телефон находится в режиме bootloader (пункт 5), достаточно в окне командной строки ввести следующую команду: fastboot oem unlock.

После этого вам нужно будет следовать инструкциям, которые будут отображены на экране вашего планшета или смартфона.

Внимание! После выполнения команды fastboot oem unlock, ваше устройство будет полностью очищено от установленных вами программ и ваши персональные данные будут также удалены.

8. Команда adb shell

Команда adb shell зачастую приводит в замешательство некоторых начинающих пользователей.

Есть два пути использования этой команды. Если вы просто введете в окне командной строки текст adb shell и нажмете клавишу «Enter», то вы «попадете» в режим терминала, или командную оболочку вашего Android устройства, где вы сможете выполнять любые команды Android shell.

Ниже вы можете увидеть результат выполнения команды ls в среде Android shell

Этот режим хорошо известен пользователям Linux и Mac компьютеров. Если вы знакомы с командами оболочки bash, то проблем с работой в этом режиме у вас не будет. В противном случае я не рекомендую пользоваться режимом adb shell, до тех пор, пока вы не будете понимать, назначение всех его команд, так как в этом режиме вы имеете полный доступ к файлам на вашем устройстве и можете случайно нанести непоправимые изменения в операционной системе.

Второй способ использования adb shell - это выполнение единичной команды Android shell с помощью такой конструкции: adb shell <команда>. Например вы можете изменить права доступа к файлу с помощью команды типа «adb shell chmod 666 /data/имя файла»

9. Команда adb install

С помощью программы adb вы можете не просто копировать файлы на устройство и обратно. Эта программа также позволяет устанавливать приложения на Android устройства в виде apk файлов. Для этого существует команда adb install. Она немного похожа на команду push: вы должны указать путь, где находится файл с приложением, которое вы хотите установить. Поэтому проще всего сначала скопировать apk файл в папку с программой adb, после чего установку программы вы можете произвести с помощью команды adb install ИмяФайлаПриложения.apk

Если вам нужно обновить приложение, то в этом случае нужно использовать ключ -r и команда будет выглядеть так: adb install -r ИмяФайлаПриложения.apk.

С помощью ключа -s вы можете устанавливать приложения на карту памяти (если ваша прошивка позволяет делать это). Ключ -l позволяет заблокировать приложение при установке (установив его в папку /data/app-private). Существуют и другие ключи для более продвинутых функций, но их описание – это тема отдельной статьи.

10. Команда adb uninstall

И наконец, вы можете удалять приложения с вашего планшета или телефона. Для этого нужно использовать команду adb uninstall ИмяФайлаПриложения.apk

У этой команды есть ключ -k, который позволяет при удалении приложения не удалять его данные и кэш, а оставить их на устройстве.

Бонус: Команда adb sideload

Эта команда очень пригодится владельцам планшетов и смартфонов Nexus – с помощью неё они смогут обновлять официальную прошивку на своих устройствах. Другими словами, если ваш смартфон или планшет не получил обновления по-воздуху, вы можете скачать новую прошивку с официального сайта, и обновить устройство «вручную».

После того, как вы скачаете файл с прошивкой на компьютер и подключите планшет или телефон к нему, вам нужно будет перезагрузить свое устройство в режим рекавери, выбрать пункт "Apply update from ADB" , а затем на компьютере в окне командной строки ввести следующую команду: adb sideload xxxxxxxx.zip, где xxxxxxxx.zip – это имя zip файла c прошивкой.

Более подробную инструкцию о том, как обновить прошивку Nexus устройств вручную вы найдете в этом материале .

Похожие материалы:

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/Android-Root..jpg 500w, http://androidkak.ru/wp-content/uploads/2015/08/Android-Root-300x127.jpg 300w" sizes="(max-width: 500px) 100vw, 500px">
Если вы открыли эту статью, то вы наверняка уже имеете хоть какое-то представление о правах суперпользователя. Но на тот редкий случай, если вы являетесь обычным пользователем Android и открыли статью из праздного интереса – небольшой ликбез.

Права суперпользователя, они же рут-права (от английского “root”, что значит “корень”) – это возможность записывать, изменять и удалять информацию, находящуюся в системном (или корневом) разделе файловой системы. Данное понятие схоже с правами администратора на Windows и применяется на операционных системах, основанных на UNIX (Linux, Android, Tizen и т.д.)

Права root можно получить практически на всех Android-устройствах и мы обязательно пройдемся по самым популярным способам их получения, но сначала давайте ответим на два очень важных вопроса: безопасно ли то, что мы с вами собираемся сейчас сделать, а также стоит ли оно того.

Какие последствия влечет за собой получение рут-прав

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/vnimanie.jpg" alt="обратите внимание" width="145" height="121" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/vnimanie..jpg 300w" sizes="(max-width: 145px) 100vw, 145px"> Прежде всего, ответьте на вопрос – читали ли вы гарантийное соглашение, которое прилагалось к вашему телефону? Если читали – то вы знаете, что получение рут-прав – это серая зона и останется ли ваша гарантия при вас по завершении процесса, зависит только от политики производителя.
Далее, запомните одну вещь – суперпользователь даёт вам полный доступ. ПОЛНЫЙ. То есть если вам вдруг придет в голову удалить важные системные файлы – вас никто не остановит. Так что внимательно следите, какие программы получают от вас данные права, а также консультируйтесь с другими, более опытными пользователями Android перед тем, как делать какую-нибудь глупость.

Какие преимущества можно получить при наличии root-прав

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-vigody.jpg" alt="Выгоды получения прав" width="159" height="50" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-vigody..jpg 300w" sizes="(max-width: 159px) 100vw, 159px"> Список того, что можно сделать при наличии root-прав просто огромен. Только взгляните на наиболее популярные причины получения прав суперпользователя!

ВАЖНО: В скобках указана программа, которая позволяет выполнить данное действие.

  1. Удаление предустановленных программ а-ля Facebook или Twitter из системного раздела (Titanium Backup);
  2. Перенос кеша приложений с внутренней карты памяти на внешнюю (FolderMount);
  3. Перенос раздела с приложениями на карту памяти (Xposed App2SD);
  4. Глобальная модификация интерфейса с возможностью тонкой настройки (практически все модули Xposed);
  5. Отключение рекламы во всех приложениях (Adaway);
  6. Взлом покупок в приложениях с PlayMarket (Freedom);
  7. Отключение проверки лицензии в невзламываемых приложениях, а также их взлом (Lucky Patcher).

Читайте также: Fastboot Mode на Андроиде: установка, настройка и выход

И это ещё не всё! Фактически, имея root-доступ к вашему телефону, вы можете сделать из него практически всё что угодно. И если ваш запал ещё не остыл – давайте перейдём к собственно процессу получения рут-прав.

Инструкция

data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/Android-s-root-pravami.jpg" alt="Рутированный Андроид" width="165" height="91" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/Android-s-root-pravami..jpg 300w" sizes="(max-width: 165px) 100vw, 165px">
К несчастью, просто так включить root-доступ на Android нельзя – производители постарались обезопасить свои творения от кривых рук пользователей и это, на самом деле, правильно – иначе число обращений в сервисные центры выросло бы в разы. Но это не значит, что получить рут-права нельзя совсем. Более того, для большинства телефонов эта процедура является крайне будничной и занимает всего несколько минут.

Существует множество способов получения root-прав и как и в наших других инструкциях, мы пойдём от простого к сложному.

1. С самого устройства

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/google-play-logo-274x300.png" alt="google play market" width="92" height="100" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/google-play-logo-274x300..png 405w" sizes="(max-width: 92px) 100vw, 92px"> Несмотря на то что многие производители максимально закрывают доступ к своим смартфонам, хакеры со всего мира время от времени находят лазейки, которые позволяют получить права всего одним нажатием на экран. А другие производители просто доверяют своим пользователям и даже публикуют алгоритмы обхода своей защиты. Именно на таком принципе и основаны различные автоматические получатели root-прав, наиболее известным из которых является KingRoot.

Всё, что требуется для получения root-прав на устройстве с помощью KingRoot – это нажать одну кнопку. Из недостатков KingRoot – не самый привычный старым пользователям Android менеджер прав. Вместо привычного SuperSU, KingRoot использует собственную программу, которая, впрочем, не особо отличается от SuperSU в вопросах функциональности.

Помимо KingRoot, популярностью пользуется программа Framaroot, а также многочисленные другие приложения для Андроид-устройств, например, VRoot,

2. С помощью ПК и специальных программ

Data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-i-pk-300x258.jpg" alt="Подключение андроида к ПК" width="150" height="129" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-i-pk-300x258..jpg 473w" sizes="(max-width: 150px) 100vw, 150px"> Если передать инструкции для разблокировки изнутри Android-системы нельзя, это ещё не значит, что этого нельзя сделать совсем. По крайней мере, согласно этому принципу оперируют такие программы, как SuperOneClick, Kingo и многие другие. В качестве основы своей работы они используют USB-соединение Андроид-смартфона и ПК, через которое и подаются команды.

Читайте также: Как пользоваться смартфоном или планшетом на Андроиде новичку

Для того чтобы получить возможность так делать, вам нужно включить в настройках вашего Android-смартфона опцию “Отладка по USB”. Находится она в скрытом разделе “Для разработчиков”, а чтобы открыть этот раздел (если он закрыт), зайдите в раздел “О планшете” и десять-пятнадцать раз нажмите на пункт “Версия сборки”.

После того как вы её включили просто подключите ваш Андроид-смартфон к ПК (в режиме Mass Storage, естественно) и запустите выбранную вами программу, после чего следуйте инструкциям по работе с ней. О том, какую именно программу выбрать и как именно ею пользоваться, вам придётся думать самостоятельно – число Android-устройств слишком велико, чтобы можно было с уверенностью сказать, какие именно из них работают с одной программой, а какие – с другой.

3. С помощью ПК и ADB-терминала

data-lazy-type="image" data-src="http://androidkak.ru/wp-content/uploads/2015/08/android-pc-adb-300x258.jpg" alt="Соединение телефона и компьютера по adb-протоколу" width="150" height="129" srcset="" data-srcset="http://androidkak.ru/wp-content/uploads/2015/08/android-pc-adb-300x258..jpg 473w" sizes="(max-width: 150px) 100vw, 150px"> Если производитель вашего смартфона очень любит свою паранойю и при этом достаточно успешен, чтобы позволить себе нанять много талантливых программистов для мало кому нужного дела (особенно этим грешит Sony) – получить рут-права с помощью KingRoot или Kingo не выйдет. Точно так же, как не выйдет и получить root на устройствах с нестандартной начинкой (скажем на линейке Asus Zenfone или китайских Андроид-планшетах построенных на Intel Atom). В этом случае придётся воспользоваться помощью компьютера и adb-интерфейса.

Для тех, кто не знает, что такое adb, отвечаем. ADB – это специальный протокол, который позволяет вашему Андроид-устройству получать инструкции с компьютера по USB-кабелю. Благодаря тому, что ADB является частью самой системы Android, такие команды в большинстве случаев имеют более высокий приоритет, чем защитные решения производителя телефона.

Для нормальной работы ADB с вашим телефоном вам понадобится как минимум:

  • Компьютер с операционной системой Windows 7 (более новые ОС могут работать нестабильно или вообще не работать с нужными драйверами);
  • Набор adb-драйверов для вашего устройства (обычно выдаётся производителем);
  • USB-кабель;
  • Собственно, смартфон с включённой в настройках опцией “Отладка по USB”;
  • Распакованный в папку “X://ADB”, где X – (желательно) несистемный диск, архив с ADB-терминалом.

Для linux. [Это пакет инструментов для разработчиков под Android]

  • Распакуйте директорию /tools на рабочий стол. [Возможно для этого понадобится установить архиватор 7zip. Он есть в репозиториях Ubuntu.]
  • Создайте директорию "bin" и поместите туда программу ADB:
  • mkdir -p ~/bin
    mv ~/Desktop/tools/adb ~/bin/

    2. Сбор необходимой информации

    • На вашем телефоне перейдите Насторйки=>Приложения=>Разработка (Settings=>Applications=>Development) и включите опцию Отладка по USB(USB debugging)
    • Подключите ваш телефон к компьютеру. [*В режиме телефона, не в режиме USB накопителя]
    • В терминале на компьютере выполните "lsusb " без кавычек
    • Одна из строк в результате должна быть похожа на что-то вроде (в зависимости от производителя вашего телефона):
    • Запишите или запомните первые 4 символа после ID. Это идентификатор производителя (Vendor ID, в нашем примере 04e8). Номера Bus и Device будут разными всякий раз при переподключении телефона к компьютеру или после его перезагрузки.
    • В терминале выполните "id " без кавычек, эта команда покажет имя и группу пользователя под которым вы вошли в систему (если вы не уверены, что знаете их точно)

    3. Установка првила Udev для работы ADB

    • Откройти любимый текстовый редатктор с правами root. Например, в терминале Kubuntu наберите "kdesudo kate ".
    • Вставьте следующую строку без переносов в редактор и измените как указано ниже:

    SUBSYSTEM=="usb", SYSFS{idVendor}=="<идентификатор производителя Vendor ID>", OWNER="<имя пользователя>" GROUP="<имя группы>"

    Для нашего примера "< идентификатор производителя 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.]

    Вы должны увидеть свой телефон в списке.

    Замечание. Предварительное рутование может и не потребоваться при переходе непосредственно на нестандартные прошивки, такие как: CM7 или MIUI через Odin/Heimdall, в любом случае вам потребуется ADB (см. пункты 1-4) Samsung Fascinate Root Package
    Эти файлы необходимы, хотя драйвера не нужны для Linux.

    6. Распаковка 4-х файлов в ~/bin
    Эту директорию мы создали в шаге 1, там уже должен быть файл adb. Вы можете распаковать куда-нибудь загруженный архив и поместить необходимые файлы в ~/bin (это su, rage.bin, busybox, Superuser.apk).

    7. Переход в ~/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

    [Примечание: символ приглашения ввода строки должен измениться на

    $ , это означает, что мы удаленно подключились к телефону]

    cd /data/local/tmp

    chmod 0755 rage.bin

    ./rage.bin

    [Примечание: Эта комманда определит ограничение процесса, найдет номер процесса adb, а затем запускает процессы до исчерпания этого ограничения. Вы быстро вернетесь в строк сприглашением $, но ЭТО НЕ ВСЕ. ЖДИТЕ пока не выведется что-то похожее на "[+] Forked 3705 childs." и вы вернетесь в свою домашнюю директорию.]

    9. Зафиксируем права root

    • В терминале вернитесь в директорию ~/bin введите "./adb shell "

      На этот раз вы должны получить приглашение # вместо $ . Это означает, что теперь вы удаленно зашли на телефон как root.

    • Скопируйте и вставьте каждую строку по отдельности (жмите Enter после каждой строки):

    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 пользователя.

    Читайте также: