Terminal Emulator Adb Shell

1,040 views
Skip to first unread message

Ulisses Dias

unread,
Feb 7, 2013, 6:55:35 AM2/7/13
to androi...@googlegroups.com
Olá pessoal,

Eu tenho uma dúvida sobre o uso do ADB. Eu consigo usar o adb
shell via usb a partir do meu macbook. Entretanto, quando eu tento
usar o adb shell via Terminal Emulator, eu recebo um erro de
permission denied. O meu celular não é rooteado, então gostaria de
saber se o celular precisa ser rooteado.

Intuitivamente, eu pensava que não precisaria rootear o celular,
já que eu consigo acessar o adb shell do computador sem ser root,
então não deveria precisar de root para acessar os mesmos comandos do
próprio celular.

Me respondam se eu estou errado.

Um forte abraço,
Ulisses

Daniel da Veiga

unread,
Feb 7, 2013, 7:03:52 AM2/7/13
to androi...@googlegroups.com
Não entendi exatamente o que você quer? O adb é um programa para o computador, e o adb shell especificamente é um comando que lhe dá um shell (linha de comando) no aparelho.

Teoricamente, quando você usa o terminal, você ESTÁ num shell. Qual seria o motivo de dar um adb shell em um shell?


2013/2/7 Ulisses Dias <ulisse...@gmail.com>

--
--
Grupo Android Brasil
http://groups.google.com/group/androidbrasil?hl=pt-BR
Regras da Lista: http://bit.ly/t8wM7U

---
Você está recebendo esta mensagem porque se inscreveu no grupo "Android Brasil" dos Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um e-mail para androidbrasi...@googlegroups.com.
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.





--
Daniel da Veiga

Fernando Maia

unread,
Feb 7, 2013, 7:06:04 AM2/7/13
to androi...@googlegroups.com
Loop infinito talvez...

Ulisses Dias

unread,
Feb 7, 2013, 7:13:17 AM2/7/13
to androi...@googlegroups.com
Hmm, deixa eu tentar explicar melhor.

Quando eu estou na linha de comando do macbook e tenho um
aparelho plugado pela USB, eu mando comandos para o celular do tipo:

adb shell sendevent /dev/input/event3 ....

Comandos desse tipo permintem fazer várias coisas no aparelho a
partir da linha de comando do computador. Para isso funcionar eu
precisei usar o "adb shell". Eu percebi que se eu instalar o "Terminal
Emulator" no meu aparelho, eu posso usar o comando "adb shell" sem
precisar da linha de comando do computador, pois o aparelho vai ter a
sua própria linha de comando com o comando adb instalado. Entretanto,
todas as vezes que eu tento fazer isso no aparelho, eu recebo uma
mensagem de "permission denied".

Daí vai a dúvida, quando eu usava a linha de comando do
computador eu não precisava ser root, mas para fazer a mesma coisa do
próprio aparelho eu não tenho permissão. Então eu queria saber se é
realmente preciso ser root para usar o adb a partir do aparelho.

Espero ter esclarecido

Em 7 de fevereiro de 2013 10:06, Fernando Maia
<fernando...@gmail.com> escreveu:

Daniel da Veiga

unread,
Feb 7, 2013, 7:15:00 AM2/7/13
to androi...@googlegroups.com
Você já tentou dar apenas "sendevent blablabla" no terminal? Lembrando, você ESTÁ num shell, não precisa usar o comando adb para acessar um e a partir disso enviar um comando. Você pode dar o comando diretamente.


2013/2/7 Ulisses Dias <ulisse...@gmail.com>



--
Daniel da Veiga

Fernando Maia

unread,
Feb 7, 2013, 7:22:24 AM2/7/13
to androi...@googlegroups.com
Acredito que para usar com o aparelho você precise sim do root. O ADB não é permitido ao usuário comum e problemas com permissão geralmente é acesso restrito a alguma pasta do sistema.

Ulisses Dias

unread,
Feb 7, 2013, 7:31:41 AM2/7/13
to androi...@googlegroups.com
Realmente basta usar só o sendevent, não precisa do "adb shell" para
abrir um shell no dispositivo (eu já estou no dispositivo, como não
pensei nisso antes). O problema é que ainda dá uma mensagem de erro,
agora um pouco diferente.

could not open /dev/input/event3, permission denied.

Vou continuar fuçando um pouco mais, vou ver se eu consigo mecher nas
permissões a partir do adb shell do computador. Se não der eu cogito
rootear o aparelho.

Abraços,
Ulisses


Em 7 de fevereiro de 2013 10:22, Fernando Maia
<fernando...@gmail.com> escreveu:

Thiago Almeida

unread,
Feb 7, 2013, 7:58:07 AM2/7/13
to androi...@googlegroups.com
Ulisses,

se esta dando permissão negada, é pq vc precisa de acesso root.


2013/2/7 Ulisses Dias <ud...@ic.unicamp.br>



--
Atenciosamente,
 

Thiago Nascimento Almeida

Contato: (79) 9950-9228 / (79) 9144-9231
LinkedIn Google Plus Page Twitter foursquare Facebook Curriculo

Daniel da Veiga

unread,
Feb 7, 2013, 8:22:59 AM2/7/13
to androi...@googlegroups.com
Aí chegamos ao ponto. O ADB roda com certos privilégios sobre certas aplicações e permite coisas que com o shell local não podemos fazer. Se o acesso que você precisa para os comandos é privilegiado, então no shell do terminal você precisa de root.


2013/2/7 Ulisses Dias <ud...@ic.unicamp.br>
Realmente basta usar só o sendevent, não precisa do "adb shell" para



--
Daniel da Veiga

Paulo Henrique Colen

unread,
Feb 7, 2013, 11:08:45 AM2/7/13
to androi...@googlegroups.com

Desculpa minha ignorância, pra funcionar pelo App terminal emulador, o App teria que ter permissões, não o usuário, talvez por isso ele consegue usar pelo PC. Falei merda?

Possíveis erros de português, mensagem sendo enviada de um dispositivo móvel.

Daniel da Veiga

unread,
Feb 7, 2013, 11:16:39 AM2/7/13
to androi...@googlegroups.com
O ADB via PC tem permissões especiais, vide Carbon que, sem root, precisa de um "ativador" via PC...

O app em si pode requisitar root (e permitir todos os comandos, inclusive os que o adb shell permite via PC, sem root), mas isso é um detalhe, se o aparelho for rooteado através do adb shell o comando "su" também funciona e sem pedir confirmação nenhuma. Não confunda o sistema de usuários do Linux e suas permissões com o Android e suas permissões (são coisas bem diferentes) nem com gerenciadores de root (como o SuperSU e Superuser) que gerenciam chamadas de root de apps.


2013/2/7 Paulo Henrique Colen <paulo...@gmail.com>



--
Daniel da Veiga

Ulisses Dias

unread,
Feb 7, 2013, 11:43:59 AM2/7/13
to androi...@googlegroups.com
Realmente não consegui dar permissões só para o getevent e sendevent,
tive que rootear, mas tudo bem. Imagino que rootear seja algo trivial
para vocês, mas para os curiosos eu usei o zergrush exploit para
rootear. Encontrei os dados em:

http://forum.xda-developers.com/showthread.php?p=18805560#post18805560

O autor diz que funciona só em windows, mas se vocês pegarem o arquivo
.bat e executarem passo a passo no mac ou linux, então não tem
problema.

Atenciosamente,
Ulisses Dias

Em 7 de fevereiro de 2013 14:16, Daniel da Veiga

Fábio Emilio Costa

unread,
Feb 7, 2013, 11:45:07 AM2/7/13
to androi...@googlegroups.com
Nenhum root é "trivial", mas em geral se você seguir com cautela os passos de um bom tuto, normalmente é simples.
Obrigado!

Fabio Emilio Costa                 São Bernardo do Campo - SP - Brazil
fabioco...@gmail.com            Linux User #416439(counter.li.org)
MSN: fabioco...@gmail.com                          ICQ #:173799674
Yahoo! Messenger:hufflepuff0305                  Twitter:@HufflepuffBR

Orkut Profile: www.orkut.com/Profile.aspx?uid=16619557238254357700
Blog: hogwartslinux.wordpress.com
"Copie. Seja Legal. Não seja trouxa! Use Software Livre!"

Victor Scattone

unread,
Feb 7, 2013, 12:14:11 PM2/7/13
to androi...@googlegroups.com
Ulisses, aproveita e instala o busybox. O terminal emulator fica muito mais útil tendo as ferramentas "usuais" unix.



Victor Fischer Scattone | Victor.SO


2013/2/7 Fábio Emilio Costa <fabioco...@gmail.com>

Ulisses Dias

unread,
Feb 7, 2013, 1:02:26 PM2/7/13
to androi...@googlegroups.com
O busybox eu instalei como um dos passos para rootear, mas valeu a dica.

Agora eu estou tentando instalar um emacs na linha de comando, ficar
usando o vi é um sofrimento. Devo tentar por mais um tempo e se não
conseguir eu desisto. Gastei um dia inteiro tentando fazer tudo
funcionar e não queria usar mais.

Tenho a impressão de que aprendi muito de android só tentando fazer
essas coisas. Valeu a todos pelo suporte.

Qualquer dica do que eu posso fazer com um celular rooteado será muito
bem vinda.

Um forte abraço,
Ulisses
Reply all
Reply to author
Forward
0 new messages