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.

Mike Wentworth
fonte
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 ).

Izzy
fonte
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
3

Não é um aplicativo de terminal que usa "apt" para instalar pacotes. É incrível e tem muitos pacotes portados para dispositivos de braço - Termux & Playstore Link

Saumyakanta Sahoo
fonte
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.

Alexander Stohr
fonte
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.

babar
fonte
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.

Yuri Sucupira
fonte