Um terminal real (raiz ou não raiz)


12

Eu uso o KUBUNTU no meu laptop, mas isso vale para qualquer distribuição Linux. Posso abrir uma janela do terminal e digitar coisas como sudo apt-get update: sudo apt-get install packagename.Existe um terminal que pode executar comandos como este no Android? Não precisa ser "sudo", quero dizer simplesmente executar comandos. Eu uso o Galaxy S3, mas duvido que realmente importe para a pergunta que estou fazendo.


3
Você checou a Play Store? Existem alguns emuladores de terminal .
— Eldarerathis

1
Android não têm o apt gerenciador de pacotes
— p1xel

Sim, mas posso fazer algo útil com esses emuladores sem raiz? No Ubuntu, você ainda pode.
— Mike Wentworth

Sim, pelo menos um deles suporta a criação de novos aplicativos em Java usando ssh, rsync, vim etc. no prompt de comando do terminal, mesmo se você não tiver root.
— David Cary

Você pode obter sue outros comandos comuns do GNU fazendo root no seu dispositivo e instalando o Busybox (o busybox geralmente é instalado durante o root), mas você não pode obter o apt, pois é um gerenciador de pacotes para distribuições baseadas no Debian. O Android não é uma distribuição Linux, a única coisa comum é o kernel Linux.
— Adonis K.Kakoulidis 10/09/2015

Respostas:


12

Resumindo a partir dos comentários:

Primeiro, você precisa entender que a atualização de aplicativos funciona de maneira diferente no Android e em uma distribuição Linux "normal": não existe "apt". Embora o Android tenha seu próprio gerenciador de pacotes (ouvindo o pmcomando), as instalações / atualizações geralmente são tratadas por serviços / aplicativos como o ou outros . pmpreferiria ser comparável ao dpkg em sistemas baseados no Debian: ele pode fazer instalações locais (isto é, com o .apkarquivo já presente no próprio dispositivo: pm installseria o comando para isso), e muitas outras coisas.

Além disso: um aplicativo de terminal pode ser comparado a um terminal no Linux. Você obtém uma "janela" em modo de texto onde é possível executar comandos. A maioria são ainda semelhantes aos disponíveis no Linux, como o Android é baseado em Linux: você tem coisas como cd, ls, grepe muito mais. Para detalhes sobre isso, você pode dar uma olhada, por exemplo:

Uma olhada em nosso terminal tag-wiki também não fará mal :)

Eu diria que todos os aplicativos de terminal disponíveis para Android devem suportar o acima. Alguns até oferecem recursos adicionais, como um ambiente de desenvolvimento inteiro ( Terminal IDE ) ou acesso a servidores remotos ( JuiceSSH ).


Também vale a pena mencionar, a instalação de busybox adiciona todos os comandos "que você conhece e amor"
— saloalv

Certo, @saloalv - com a quantidade de comandos dependendo da versão do Busybox :) Não se esqueça de instalar o Busybox em todo o sistema geralmente requer raiz.
— Izzy

se fosse possível instalar! Em todo o sistema, seria ótimo para usuários não-rooteados. Infelizmente, parece que a partição sdcard é FAT32, e como tal o binário não podem ser dados direitos de execução
— saloalv

1
@saloalv que nem é o culpado. Mas é explicitamente montado com o noexecsinalizador (por razões de segurança).
— Izzy


1

nos dias atuais, há o aplicativo "termux" na loja do Google Play. ele vem com um shell unix / linux completo e com o apt. qualquer outra coisa deve ser direta então. desvantagem: ele não suporta itens como meu tablet baseado no Android 4.4.2.


0

Instale o Emulador de Terminal e o Busybox no seu Android. O Emulador de terminal fornece a janela da linha de comando e o Busybox APK fornece comandos úteis que são usados ​​no Linux wget, como chmod, chroote muito mais.


Você pode vincular os aplicativos?
— Firelord

0

Assumindo que:

  1. Seu dispositivo Android está enraizado;
  2. O subinário está localizado em /system/xbin/su;
  3. O binário do shell está localizado em /system/bin/sh; e
  4. Seu dispositivo Android possui o Emulador de Terminal instalado.

Se todas as 4 condições acima forem atendidas, então:

  • Se você deseja entrar no shell e se tornar root (superusuário uid 0) para poder executar comandos sem restrições de uid, inicie o aplicativo Emulador de Terminal e execute este comando:

    su -
    

    Para se desconectar do uid 0 (sair do status do superusuário), pressione Volume -e D, ou digite exite pressioneEnter

  • Como alternativa, se você sempre deseja iniciar o Emulador de Terminal como root, inicie o Emulador de Terminal, vá para Preferências , role para baixo até a seção SHELL , toque na opção Linha de comando e modifique o comando para que ele se torne o seguinte:

    /system/xbin/su -c "/system/bin/sh -"
    

    Depois de alterar o comando, saia do Emulador de Terminal (feche o aplicativo) e inicie-o novamente. Observe como a interface do shell do Emulador de Terminal agora mostra você root@somethingpor padrão.

Se você deseja adicionar comandos extras ao seu sistema Android enraizado , instale o BusyBox .

No caso do seu dispositivo Android não está enraizada, você ainda pode usar o Terminal Emulator, a fim de executar algum básico (usuário) comandos como blkid, cat, cd, clear, cp, du, grep, id, ln, ls, ping, sleep, uptimeet cetera.


Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.