Для меня есть способ запустить adb shell как root, не печатая в "SU"? -- adb поле с участием root-access пол android Связанный проблема

Is there a way for me to run Adb shell as root without typing in 'su'?


49
vote

проблема

русский

Есть ли способ для меня запустить adb shell как root, не набрав <код> su ? Я хочу иметь возможность иметь root-доступ, не переходя в оболочку.

Английский оригинал

Is there a way for me to run Adb shell as root without typing in su? I want to be able to have root access without going into the shell.

     

Список ответов

45
 
vote
vote
Лучший ответ
 

Если я правильно понимаю ваш вопрос, вы спрашиваете, как получить root Access автоматически при запуске <код> adb shell , чтобы вам не нужно идти в оболочку и введите <код > su Для выполнения команды как root на вашем телефоне.

Это управляется флагом в вашей загрузочной части, которые большинство пользовательских ромов изменены, чтобы разрешить разрешение на корню. Если вы упадут на <код> $ при использовании <код> adb shell , то у вас есть два постоянных варианта и один временный (временный смысл, что он не придерживается, если вы перезагрузите): < / P >.

  1. Флэш-ром, который включает в себя модификацию
  2. Создайте пользовательский boot.img и прошить его на телефон
  3. Перезагрузка <код> adbd на вашем устройстве с корневыми разрешениями

Номер 2 на самом деле не так сложно, но это может быть несколько опасно, если вы небрежны. Существует статья Wiki Здесь , который объясняет процесс и включает в себя пару сценариев Perl, чтобы помочь вам. Эти инструкции предполагают среду Linux / Unix. Я лично использовал эти инструкции на Fedora Linux и можете сказать вам, что они работают, но я не знаю о других средах * NIX, таких как Macs. Я также не знаю ни одного похожих инструкций Windows, но я мог бы попытаться отслеживать, если вы находитесь в Windows. Точные команды будут немного варьироваться от телефона на телефон, так как разные устройства используют разные таблицы разделов.

Вообще говоря, хотя, нужно, вам нужно потянуть нынешний нынешний boot.img с вашего телефона, распакуйте его, извлеките Ramdisk и найдите файл по умолчанию. Это открытый текстовый файл, который вам нужно открыть в текстовом редакторе, а затем найти строку, содержащую значение <код> ro.secure . Если линия говорит <код> ro.secure=1 , то вам нужно изменить его в <код> ro.secure=0 . После этого вы можете повторно упаковать Ramdisk и Boot.img, затем прошись его на свой телефон. После того, как вы перезагрузитесь, вы будете приветствовать <код> # Подскажите всякий раз, когда вы выполняете <код> adb shell без необходимости запуска <код> su0 .

В качестве альтернативы, если вы используете пользовательский ром, но у него нет этой модификации, вы можете просто расстегнуть ROM и изменить Boot.img, который включен в него с использованием вышеуказанных шагов. Затем вы можете застегивать ROM с новым модифицированным Boot.img и прошу прошить ZIP-файл, как обычно.

Это, вероятно, выходит, не говоря, но будь осторожен при этом. Воспитание с вашим загрузочным разбием может довольно легко разрушить свой телефон и заставить вас восстановиться через HBOOT. Я настоятельно рекомендую тестировать FastBoot, чтобы гарантировать, что вы можете использовать расширенные команды Fastboot и выполнить восстановление. Это варьируется немного на основе вашей модели, но большинство телефонов имеют какое-то настольное программное обеспечение, которое можно запускать, чтобы перепрошить телефон.


Третий вариант заключается в том, что во многих случаях может быть возможно перезапустить <код> su1 на вашем устройстве с привилегиями root. Одной из возможностей является выполнение <Код> su2 с терминала ПК, хотя это не будет работать на всех конфигурациях ROM (ROM должен быть построен как «userDebug»). Вы также можете попробовать Adbd adbd adbd adbd . Это не сохраняется на перезагрузке, поэтому вам нужно будет использовать приложение или <код> su3 еще раз в любое время, когда вы перезапустите свой телефон.

 

If I'm understanding your question correctly, you're asking how to get root access automatically when you run adb shell, so that you don't have to go into the shell and type su to execute a command as root on your phone.

This is controlled by a flag in your boot partition, which most custom ROMs have modified to allow root permission by default. If you get dropped to a $ when you use adb shell then you have two permanent options and one temporary one (temporary meaning that it doesn't stick if you reboot):

  1. Flash a ROM that includes the modification
  2. Create a custom boot.img and flash it to your phone
  3. Restart adbd on your device with root permissions

Number 2 is actually not that difficult, but it can be somewhat dangerous if you're careless. There is a wiki article here which explains the process and includes a couple of Perl scripts to help you. These instructions assume a Linux/Unix environment. I have personally used these instructions on Fedora Linux and can tell you that they work, but I do not know about other *nix environments like Macs. I also do not know of any similar Windows instructions, but I could try to track some down if you are on Windows. The exact commands will vary somewhat from phone to phone since different devices use different partition tables.

Generally speaking, though, you need to pull your current boot.img from your phone, unpack it, extract the ramdisk, and find the default.prop file. This is a plaintext file, which you need to open in a text editor and then find the line that contains the value ro.secure. If the line says ro.secure=1 then you need to change it to ro.secure=0. After that you can re-pack the ramdisk and boot.img, then flash it to your phone. Once you reboot, you will be greeted with a # prompt whenever you perform adb shell without having to run su.

Alternatively, if you are using a custom ROM but it doesn't have this modification, you can just unzip the ROM and modify the boot.img that is included with it using the above steps. Then you can zip up the ROM with the newly modified boot.img and flash the zip file as you normally would.

This probably goes without saying, but be careful when doing this. Messing with your boot partition can quite easily wreck your phone and force you to recover via HBoot. I would highly recommend testing Fastboot to makes sure you can use extended Fastboot commands and perform a recovery. This varies a bit based on your model, but most phones have some sort of desktop software that can be run to reflash the phone as well.


The third option is that in many cases it may be possible to restart adbd on your device with root privileges. One possibility is to execute adb root from a PC terminal, although this will not work on all ROM configurations (the ROM must be built as a "userdebug" one). You can also try Chainfire's adbd insecure app. This will not persist across a reboot, so you would need to use either the app or adb root again any time you restarted your phone.

 
 
         
         
17
 
vote

Хорошо, если вы звоните, вы укорените, вы можете запустить команды с помощью команды «SU -C».

Вот пример команды CAT в файле build.prop, чтобы получить информацию о продукте телефонов.

 <код> su4  

Это вызывает разрешение root и запускает команду внутри «»

Обратите внимание на 5 котировок, которые требуются, чтобы вы закрываете все ваши котировки или получите ошибку.

Для разъяснения формат похож на это.

 <код> su5  

Убедитесь, что вы вводите команду точно так, как обычно, когда вы будете работать в оболочке.

Дайте это попробовать, надеюсь, это поможет.

 

Well if you phone is rooted you can run commands with the "su -c" command.

Here is an example of a cat command on the build.prop file to get a phones product information.

adb shell "su -c 'cat /system/build.prop |grep "product"'" 

This invokes root permission and runs the command inside the ' '

Notice the 5 end quotes, that is required that you close ALL your end quotes or you will get an error.

For clarification the format is like this.

adb shell "su -c '[your command goes here]'" 

Make sure you enter the command EXACTLY the way that you normally would when running it in shell.

Give it a try, hope this helps.

 
 
 
 
2
 
vote

Просто установить adbd небезопасно .

 

Simply install adbd Insecure.

 
 
1
 
vote

Что вы пытаетесь запустить как root? Вы говорите, что вы хотите запустить Shell adb с root, но вы не хотите использовать adb shell? Вы можете уточнить?

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

 

What are you trying to run as root for? You're saying that you want to run ADB shell with root but you don't want to use ADB shell? Can you clarify?

If the application requests for root access, then the SuperUser application on your phone should handle giving it permission or not. The process in which you rooted your phone should have included a SuperUser application.

 
 
       
       
1
 
vote

Как альтернатива, вы можете написать свой скрипт на телефоне и просто иметь ADB выполнить его, например:

 <код> adb shell sh /sdcard/myscript.sh   

Сценарий может подняться без вашего вмешательства (при условии, что суперпользователь устанавливается, чтобы запомнить одобрение), например:

 <код> su pm setInstallLocation 1   

Я только что сделал это на моем телефоне с успехом, единственная проблема, являющаяся тем, что я не совсем понял, как чистоковывать сеанс adb оболочки. Я должен Ctrl-C в моем оболочке Windows, чтобы вернуться в командную строку Windows - в противном случае ADB просто сидит в командной строке #, и не принимает вход.

 

As an alternative, you could write your script on the phone and simply have adb execute it, for example:

adb shell sh /sdcard/myscript.sh 

The script can elevate itself without your intervention (assuming SuperUser is set to remember the approval), for example:

su pm setInstallLocation 1 

I just did this on my phone with success, the only problem being that I haven't quite figured out how to cleanly end the adb shell session. I have to Ctrl-C in my Windows shell to return to the Windows command prompt -- otherwise adb just sits at the # prompt and doesn't accept input.

 
 
0
 
vote

Я использую для ремонта домашней кнопки Выдача ошибки


ADB Устройства

adb shell su-c <код> commands

или

root root root sqlite3 /data/data/com.android.providers.settings/databases/settings.db "Вставить в безопасные значения (имя, значение) ('device_provision', '1');"

ADB Kill-Server

 

i use for repair home button issue failure


adb devices

adb shell su -c commands

or

adb root shell sqlite3 /data/data/com.android.providers.settings/databases/settings.db "INSERT INTO secure (name,value) VALUES ('device_provisioned','1');"

adb kill-server

 
 
-1
 
vote

Вы также можете установить SUID Bit в своем «SH». Я использую Busybox, поэтому инструкции могут не соответствовать вашей настройке:

  1. adb shell
  2. Су
  3. mount-o memont, rw / system (или: adb memornount)
  4. ls -la / system / bin / sh LRWXR-XR-X Root Shell 2012-11-10 15:20 SH - & GT; mksh
  5. chmod 4755 / Система / bin / sh
  6. ls -la / system / bin / mksh
    -RWSR-XR-X корневой оболочку 157520 2012-11-10 09:54 MKSH (Обратите внимание на Bit Suit Bit)
  7. ^ d
  8. adb shell

, и вы должны иметь корневую подсказку

 

You can also set the suid bit on your 'sh'. I'm using BusyBox so instructions may not match your setup:

  1. adb shell
  2. su
  3. mount -o remount,rw /system (or: adb remount)
  4. ls -la /system/bin/sh lrwxr-xr-x root shell 2012-11-10 15:20 sh -> mksh
  5. chmod 4755 /system/bin/sh
  6. ls -la /system/bin/mksh
    -rwsr-xr-x root shell 157520 2012-11-10 09:54 mksh (notice the suid bit is set)
  7. ^D
  8. adb shell

and you should have the root prompt

 
 
   
   

Связанный проблема

0  Примечание 3 - Убитые приложения  ( Note 3 apps killed ) 
У меня укоренена примечание 3: . samsung-sm-n900a (at & amp; t) Android 4.3 baseband n900aucubnb4 Проблема у меня есть то, что есть что-то, что убива...

3  Я больше не могу писать / эмулировать / 0 без доступа к корню или системе  ( I can no longer write to emulated 0 without root or system access ) 
У меня есть спринт Galaxy Note 3. Я укоренился с CF Auto Root, вспыхнул TWRP, вспыхнул Jellybomb, а затем восстановил обратно на запас с резервной копии нандо...

1  Как мне вспыхнуть акции Android ROM на мою Nokia 2.1 - к которому я заблокировал оба PIN-кода и учетные данные Google?  ( How do i flash stock android rom on my nokia 2 1 to which ive forotten both p ) 
Так что я недавно унаследовал Nokia 2.1 от родственника, который прошел. Я не знаю PIN-код, и я не знаю учетные данные Google 0needed. Когда я вхожу в Recov...

7  Как вы удалите предварительно установленные приложения на укорененный телефон?  ( How do you remove pre installed apps on a rooted phone ) 
У меня есть укорененный Nexus One и хотите удалить некоторые из предварительно установленных приложений, например, Amazon MP3. Какой лучший способ сделать э...

310  Я уконул свой телефон. Что теперь? Что я выиграю от укоренения?  ( Ive rooted my phone now what what do i gain from rooting ) 
Это общий вопрос тем, кто только что уконул свои телефоны. Какие приложения, рома, льготы и т. Д. Я получаю от рутинга? Что я должен делать сейчас? ...

1  Любой способ получить root без пользовательского восстановления? (Разблокированный загрузчик)  ( Any way to get root without a custom recovery unlocked bootloader ) 
У меня есть телефон с разблокированным загрузчиком (Motorola Moto Maxx XT1225), но для него пока нет никаких пользовательских восстановлений. Есть ли способ...

19  Использование SMB-сервера без доступа к корню  ( Using smb server without root access ) 
Я ищу способ для моего HTC Hero (Android 2.1), поэтому я могу поделиться содержимым моей карты SD и памятью телефона по сети WiFi, как обычный файл Windows. Я...

3  Как установить пачки дополнительных команд терминалов для укоренившихся устройств?  ( How to install bundles of additional terminal commands for rooted devices ) 
Я недавно уконул устройство HTC Wildfire S и вспыхнул Android 4.1.2 Aokp Jelly Bean Custom Custom Custom. Одно извлечение в том, что я могу использовать терми...

0  Как я могу получить все мои файлы с моим телефона без USB  ( How can i get all my files off my phone without usb ) 
У меня есть «существенный» телефон Android, который укоренился, имеет терминал и SuperSU, но не признает, что он подключен к компьютеру, а не зарядной станцие...

49  Для меня есть способ запустить adb shell как root, не печатая в "SU"?  ( Is there a way for me to run adb shell as root without typing in su ) 
Есть ли способ для меня запустить adb shell как root, не набрав <код> su ? Я хочу иметь возможность иметь root-доступ, не переходя в оболочку. ...