Ein echtes Terminal (Root oder No-Root)

12

Ich verwende KUBUNTU auf meinem Laptop, aber das gilt für jede Linux-Distribution. Ich kann ein Terminalfenster öffnen und Dinge wie Folgendes eingeben sudo apt-get update: sudo apt-get install packagename.Gibt es ein Terminal, das Befehle wie diesen auf Android ausführen kann? Es muss nicht "sudo" sein, ich meine einfach das Ausführen von Befehlen. Ich benutze das Galaxy S3, aber ich bezweifle, dass es für die Frage, die ich stelle, wirklich wichtig ist.

Mike Wentworth
quelle
3
Hast du den Play Store überprüft? Es gibt einige Terminalemulatoren .
Eldarerathis
1
Android hat nicht die
Apt-
Ja, aber kann ich mit diesen Emulatoren ohne Root etwas Nützliches tun? Auf Ubuntu können Sie immer noch.
Mike Wentworth
Ja, mindestens eine von ihnen unterstützt das Erstellen neuer Apps in Java mithilfe von ssh, rsync, vim usw. über die Eingabeaufforderung des Terminals, auch wenn Sie nicht über root verfügen.
David Cary
Sie können suund andere gebräuchliche GNU-Befehle erhalten, indem Sie Ihr Gerät rooten und Busybox installieren (Busybox wird normalerweise beim Rooten installiert), aber Sie können nicht apt bekommen, da es ein Paketmanager für Debian-basierte Distributionen ist. Android ist keine Linux-Distribution. Das einzige, was es gibt, ist der Linux-Kernel.
Adonis K. Kakoulidis

Antworten:

12

Zusammenfassend aus den Kommentaren:

Zunächst müssen Sie verstehen, dass das Aktualisieren von Apps auf Android anders funktioniert als auf einer "normalen" Linux-Distribution: "apt" gibt es nicht. Obwohl Android einen eigenen Paketmanager hat (der den pmBefehl abhört), werden Installationen / Updates normalerweise von Diensten / Apps wie oder anderen . pmwäre eher vergleichbar mit dpkg auf Debian-basierten Systemen: es kann lokale Installationen durchführen (dh mit der .apkDatei, die bereits auf dem Gerät vorhanden ist: pm installwäre der Befehl dafür) und viele andere Dinge.

Ansonsten ist eine Terminal-App durchaus mit einem Terminal unter Linux vergleichbar. Sie erhalten ein Text-Modus "Fenster", in dem Sie Befehle ausführen können. Die meisten sind auch ähnlich wie verfügbar die auf Linux, wie Android ist Linux basiert: Sie haben Dinge wie cd, ls, grepund vieles mehr. Für Details hierzu möchten Sie vielleicht einen Blick auf zB

Ein Blick in unser Terminal Tag-Wiki schadet auch nicht :)

Ich würde sagen, dass alle für Android verfügbaren Terminal-Apps die oben genannten unterstützen sollten. Einige bieten sogar zusätzliche Funktionen, z. B. eine gesamte Entwicklungsumgebung ( Terminal IDE ) oder den Zugriff auf Remote-Server ( JuiceSSH ).

Izzy
quelle
Erwähnenswert ist auch, dass durch die Installation von busybox alle Befehle "Sie kennen und lieben"
hinzugefügt werden
Richtig, @saloalv - mit der Anzahl der Befehle abhängig von der Version von Busybox :) Vergessen Sie nicht, Busybox systemweit zu installieren. Erfordert normalerweise root.
Izzy
Wenn es möglich wäre,! systemweit zu installieren, wäre es ideal für Benutzer ohne Rootberechtigung. Leider scheint es, dass die sdcard-Partition fat32 ist, und als solche kann die Binärdatei keine Ausführungsrechte erhalten
saloalv
1
@ Saloalv, das ist nicht einmal der Schuldige. Es wird aber explizit mit dem noexecFlag gemountet (aus Sicherheitsgründen).
Izzy
3

Es gibt eine Terminal-App, die "apt" verwendet, um Pakete zu installieren. Es ist fantastisch und hat viele Pakete, die für Armgeräte portiert sind - Termux & Playstore Link

Saumyakanta Sahoo
quelle
1

in der heutigen zeit gibt es die app "termux" im google play store. es kommt mit einer vollständigen Unix / Linux-Shell und mit apt. alles andere sollte dann einfach sein. Nachteil: Es werden keine Elemente wie mein Android 4.4.2-basiertes Tablet unterstützt.

Alexander Stohr
quelle
0

Installieren Sie Terminal Emulator und Busybox in Ihrem Android. Terminal Emulator gibt Befehlszeilenfenster und Busybox APK gibt nützliche Befehle , die wie in Linux verwendet werden wget, chmod, chrootund vieles mehr.

Babar
quelle
Können Sie die Apps verlinken?
Firelord
0

Vorausgesetzt, dass:

  1. Ihr Android-Gerät ist gerootet.
  2. Die suBinärdatei befindet sich bei /system/xbin/su;
  3. Die Shell-Binärdatei befindet sich bei /system/bin/sh; und
  4. Auf Ihrem Android-Gerät ist Terminal Emulator installiert.

Wenn alle 4 oben genannten Bedingungen erfüllt sind, dann:

  • Wenn Sie die Shell betreten und root werden möchten (Superuser UID 0), um Befehle ohne UID-Einschränkungen ausführen zu können, starten Sie die Terminal-Emulator-App und führen Sie einfach diesen Befehl aus:

    su -
    

    Um die Verbindung zur Benutzer-ID 0 zu trennen (Superuser-Status beenden), drücken Sie Volume -und Doder geben Sie ein exitund drücken SieEnter

  • Alternativ, wenn Sie wollen immer Terminal Emulator als root starten, dann auf Terminal - Emulator starten, gehen Einstellungen , scrollen Sie zum SHELL Abschnitt, tippen Sie auf die Befehlszeile - Option und den Befehl ändern , so dass es dies zu:

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

    Nachdem Sie den Befehl geändert haben, beenden Sie den Terminal-Emulator (schließen Sie die Anwendung) und starten Sie ihn erneut. Beachten Sie, dass die Shell-Oberfläche root@somethingvon Terminal Emulator Sie jetzt standardmäßig anzeigt .

Wenn Sie Ihrem verwurzelten Android-System zusätzliche Befehle hinzufügen möchten , installieren Sie BusyBox .

Wenn Ihr Android - Gerät nicht verwurzelt ist, können Sie immer noch in Terminal - Emulator verwenden , um einige grundlegende (Benutzer) Befehle wie auszuführen blkid, cat, cd, clear, cp, du, grep, id, ln, ls, ping, sleep, uptimeet cetera.

Yuri Sucupira
quelle