Por que não consigo obter acesso root do shell?

14
> adb shell
sh-4.1$ su
Permission denied

Enraizei meu telefone com sucesso. Eu sei disso porque sou capaz de instalar aplicativos no cartão SD e tenho um programa chamado SD Maid capaz de operar com permissões de root.

Kshitiz Sharma
fonte
A instalação de aplicativos no SDCard não requer necessariamente raiz, e o SDMaid também (parcialmente) funciona sem, portanto, isso não é prova. Sua citação do shell, por outro lado, parece provar que você não teve sucesso com o seu enraizamento. Ao verificar seus aplicativos instalados, existe SuperUser ou SuperSU disponível? Você recebe avisos como "Permissões de root solicitadas pelo SDMaid" que você precisa confirmar?
Izzy
@Izzy recebo notificações como SD Maid has been granted super root permissions? Além disso, acabei de instalar o play.google.com/store/apps/… e ele me pede uma confirmação de super usuário, que é concedida com sucesso.
Kshitiz Sharma
@ Izzy, eu imploraria para diferir. A instalação de aplicativos no SDCard exige fazer o root no seu telefone. Você poderia apontar para um exemplo contrário?
Kshitiz Sharma
Claro: vá para Configurações-> Aplicativos-> Gerenciar aplicativos e percorra-os. Os aplicativos que o suportam podem ser movidos simplesmente tocando no botão correspondente. Segundo: Dê uma olhada no AppMonster , logo na primeira captura de tela, abaixo do "ícone da lua" de "Sleepy Timer": este aplicativo suporta App2SD, sem raiz. O AppMonster pode movê-lo (sem exigir root) e até oferecerá isso. O App2SD é suportado nativamente desde o Android 2.2. Siga a tag FAQ: App2SD
Izzy
Para o comentário anterior: OK, então aceite que a raiz funcionou. Mais uma vez, verifique seus aplicativos para SuperUser / SuperSU, desta vez inicie o aplicativo. Na sua configuração, ele deve deixar você ver quais permissões ele armazenou; talvez você tenha marcado acidentalmente "lembrar" e pressionado o botão "negar" do shell adb. Se você encontrar uma entrada correspondente, basta removê-la. Da próxima vez que você for perguntado novamente, aperte o botão correto :) #
2155 Izzy

Respostas:

14

A partir daqui :

Pode ser necessário ativar o adb root no menu de configurações do desenvolvedor. Se você executar o adb root a partir da linha cmd, poderá obter:

acesso root é desativado pela configuração do sistema - ativar nas configurações -> opções de desenvolvimento

acesso root é desativado pela configuração do sistema - ativar nas configurações -> opções de desenvolvimento Depois de ativar a opção raiz (somente ADB ou Apps e ADB), o adb será reiniciado e você poderá usar o root a partir da linha cmd.

Anthony
fonte
5
Esta configuração não está disponível em todas as ROMs (não foi possível encontrá-la, por exemplo, no meu LG Optimus 4X , que obviamente está enraizado). IMHO esta é uma especialidade da CyanogenMod.
Izzy
o que você sabe sobre o Android, cara? > o acesso root é desativado pela configuração do sistema - ativar nas configurações -> opções de desenvolvimento Depois de ativar a opção root (somente ADB ou Apps e ADB), o adb será reiniciado e você poderá usar o root a partir da linha cmd.
Nizzy 18/04
2

Há um aplicativo no Google Play chamado ADBD Insecure by Chainfire . Este aplicativo permite que você execute o adbd no modo raiz se o seu dispositivo estiver enraizado ao executar a ROM de estoque de dispositivos. Acabei de descobrir recentemente sobre este aplicativo.

A versão no Google Play não é gratuita, mas existe uma versão gratuita disponível. O link para a versão gratuita está vinculado na descrição do aplicativo no Google Play.

O que é ótimo sobre este aplicativo, ele funciona com ROMs de ações que foram enraizadas. Se você estiver usando um kernel personalizado ou uma ROM personalizada, provavelmente não precisará deste aplicativo. Mas se você ainda estiver usando uma ROM de ações, apenas enraizada, poderá obter esse aplicativo para o seu dispositivo.

adbd Inseguro permite executar o adbd no modo raiz se o seu dispositivo estiver enraizado. (Observe que, se você estiver executando um kernel personalizado, é provável que ele já implemente essa funcionalidade)

Se você estiver executando um kernel padrão (fabricado pelo fabricante do telefone) em seu dispositivo, é provável que o adbd esteja sendo executado no modo "seguro", mesmo se você estiver com root. Este aplicativo permite executar o adbd no modo "inseguro", que fornece acesso root no "adb shell", permite acessar arquivos e diretórios do sistema através de "adb push / pull" e permite executar o comando "adb remount" sua partição / system gravável.

insira a descrição da imagem aqui

Ryan Conrad
fonte
Eu tentei o aplicativo ADBD Insecure gratuito a partir do thread XDA original no meu Oneplus 5 Nougat com raiz no Magisk, mas isso não ajudou e também interrompeu a conectividade MTP no modo de depuração USB até o telefone ser reiniciado.
Vadzim 28/01
0

Atualmente, o Magisk é comumente usado para fazer root.

Descobri que no meu Oneplus 5 (Oxygen OS, Nougat) era suficiente acessar o aplicativo Magisk Manager, abrir a tela de permissões de superusuário e alternar o Shell (com.android.shell) para resolver o problema de permissão adb su negada.

Vadzim
fonte
0

Ative o acesso root para adb no menu de configurações do desenvolvedor. Em seguida, conecte seu cabo USB e digite:

adb root

Deve retornar

restarting adbd as root

Agora reinicie o shell

adb shell
cardamomo
fonte
O Stock Android não fornece "acesso root para adb" nas Opções do desenvolvedor. adb rootsó é possível em userdebugROMs: Por que "adb root" não faz nada?
Irfan Latif