Una terminal real (raíz o sin raíz)

12

Uso KUBUNTU en mi computadora portátil, pero esto vale para cualquier distribución de Linux. Puedo abrir una ventana de terminal y el tipo de cosas como sudo apt-get update, sudo apt-get install packagename.¿Hay un terminal que puede ejecutar comandos como este en Android? No tiene que ser "sudo", simplemente me refiero a ejecutar comandos. Uso el Galaxy S3, pero dudo que realmente sea importante para la pregunta que estoy haciendo.

Mike Wentworth
fuente
3
¿Revisaste Play Store? Hay bastantes emuladores de terminal .
eldarerathis
1
Android no tiene el administrador de paquetes apt
p1xel
Sí, pero ¿puedo hacer algo útil con estos emuladores sin root? En Ubuntu, todavía puedes.
Mike Wentworth
Sí, al menos uno de ellos admite la creación de nuevas aplicaciones en Java utilizando ssh, rsync, vim, etc. desde su símbolo del sistema del terminal, incluso si no tiene root.
David Cary
Puede obtener suy otros comandos GNU comunes al rootear su dispositivo e instalar Busybox (busybox generalmente se instala mientras se rootea), pero no puede ser apto ya que es un administrador de paquetes para distribuciones basadas en Debian. Android no es una distribución de Linux, lo único común que tiene es el kernel de Linux.
Adonis K. Kakoulidis

Respuestas:

12

Resumiendo de los comentarios:

Primero, debe comprender que la actualización de aplicaciones funciona de manera diferente en Android que en una distribución Linux "normal": no existe "apt". Aunque Android tiene su propio administrador de paquetes (escuchando el pmcomando), las instalaciones / actualizaciones generalmente son tratadas por servicios / aplicaciones como u otros . pmpreferiría ser comparable con dpkg en los sistemas basados ​​en Debian: puede realizar instalaciones locales (es decir, con el .apkarchivo ya presente en el dispositivo: pm installsería el comando para eso), y muchas otras cosas.

Aparte de eso: una aplicación de terminal se puede comparar con un terminal en Linux, de acuerdo. Obtiene una "ventana" en modo texto donde puede ejecutar comandos. La mayoría son incluso similares a los disponibles en Linux, como Android está basado en Linux: tienes cosas como cd, ls, grep, y mucho más. Para obtener detalles sobre esto, es posible que desee ver, por ejemplo,

Una mirada a nuestro terminal tag-wiki tampoco te hará daño :)

Yo diría que todas las aplicaciones de terminal disponibles para Android deberían ser compatibles con lo anterior. Algunos incluso ofrecen características adicionales, como un entorno de desarrollo completo ( Terminal IDE ) o acceso a servidores remotos ( JuiceSSH ).

Izzy
fuente
También vale la pena mencionar, la instalación de busybox agrega todos los comandos "usted sabe y ama"
saloalv
Correcto, @saloalv: la cantidad de comandos depende de la versión de Busybox :) No olvides que instalar Busybox en todo el sistema generalmente requiere root.
Izzy
si fuera posible instalarlo en todo el sistema, sería genial para usuarios no rooteados. Por desgracia, parece que la partición FAT32 es sdcard, y los derechos de ejecución, tales como el binario no se puede dar
saloalv
1
@saloalv ese ni siquiera es el culpable. Pero se monta explícitamente con la noexecbandera (por razones de seguridad).
Izzy
3

No es una aplicación de terminal que utiliza "apta" para instalar los paquetes. Es increíble y tiene muchos paquetes portados para dispositivos de brazo - Termux & Playstore Link

Saumyakanta Sahoo
fuente
1

En la actualidad existe la aplicación "termux" en Google Play Store. Viene con un shell completo de Unix / Linux y con apt. cualquier otra cosa debería ser sencilla entonces. inconveniente: no es compatible con elementos como mi tableta basada en Android 4.4.2.

Alexander Stohr
fuente
0

Instale Terminal Emulator y Busybox en su Android. Emulador de terminal da la ventana de línea de comandos y Busybox APK da comandos útiles que se utilizan en Linux como wget, chmod, chrooty mucho más.

babar
fuente
¿Puedes vincular las aplicaciones?
Señor del Fuego
0

Asumiendo que:

  1. Su dispositivo Android está rooteado;
  2. El subinario se encuentra en /system/xbin/su;
  3. El binario de shell se encuentra en /system/bin/sh; y
  4. Su dispositivo Android tiene instalado el emulador de terminal .

Si se cumplen las 4 condiciones anteriores, entonces:

  • Si desea ingresar al shell y convertirse en root (superusuario uid 0) para poder ejecutar comandos sin restricciones de uid, inicie la aplicación Terminal Emulator y simplemente ejecute este comando:

    su -
    

    Para desconectarse del uid 0 (salir del estado de superusuario), presione Volume -y D, o escriba exity presioneEnter

  • Alternativamente, si desea iniciar siempre Terminal Emulator como root, inicie Terminal Emulator, vaya a Preferencias , desplácese hacia abajo hasta la sección SHELL , toque la opción Línea de comando y modifique el comando para que se convierta en esto:

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

    Después de cambiar el comando, salga de Terminal Emulator (cierre la aplicación) y vuelva a iniciarlo. Observe cómo la interfaz de shell de Terminal Emulator ahora le muestra root@somethingde forma predeterminada.

Si desea agregar comandos adicionales a su sistema Android rooteado , instale BusyBox .

En caso de que su dispositivo Android no está arraigado, puede seguir utilizando el emulador de terminal con el fin de ejecutar algún básica (usuario) comandos como blkid, cat, cd, clear, cp, du, grep, id, ln, ls, ping, sleep, uptimeetcétera.

Yuri Sucupira
fuente