Ich hatte nicht die Gelegenheit, genug über Android , Linux oder UNIX zu lesen , um dies selbst zu beantworten. sudo
Funktioniert auf einem Linux-Computer, aber nicht auf Android, es sei denn, Sie rooten das mobile Gerät (z. B. Samsung GT-N8013). Warum muss das mobile Gerät gerootet sein, aber nicht die typische Linux-Installation?
Der Kontext meiner Frage bezieht sich auf /programming/14019698/adb-shell-sudo-on-windows-7/14019726#14019726
( root
Gibt es auch eine Möglichkeit für ein Programm, die Ausführung unter Android zu fordern , genauso wie Sie es bei Windows mit einer Eskalation der Berechtigungen für die Ausführung als Administrator haben? Wenn Sie der Meinung sind, dass diese Frage in einem eigenen Thread gestellt werden sollte, kann ich sie erstellen eins)
quelle
sudoers
Liste zu bekommen seinsudo
. Es ist nicht in Android ein UbuntuAntworten:
sudo
ist eine normale anwendung mit dem suid bit. Das heißt, um es nutzen zusudo
können, muss es auf dem System installiert sein. Nicht alle Linux-Systeme habensudo
standardmäßig installiert, wie zum Beispiel Debian.Die meisten Android-Systeme richten sich an Endbenutzer, die die Interna von Android nicht kennen müssen (dh, jede Android-Anwendung wird unter einem eigenen Benutzer ausgeführt). Daher ist es nicht erforderlich, einem Endbenutzer eine interaktive Möglichkeit zur Ausführung eines Befehls als System bereitzustellen Administrator.
Im Allgemeinen können Sie einen Befehl verwenden,
su
anstatt ihnsudo
als anderer Benutzer auszuführen. Sie müssen jedoch die Anmeldeinformationen für den Zielbenutzer kennensu
(sudo
Sie müssen die Anmeldeinformationen des Benutzers kennen, der den Befehl ausführt).quelle
sudo
ist nicht universell . Nur weil es in der von Ihnen verwendeten Linux-Distribution vorhanden ist, bedeutet dies nicht, dass es auf allen Betriebssystemen verfügbar ist, die auch den Linux-Kernel verwenden.quelle
Das Telefon muss gerootet sein, damit der
root
Benutzer es installiertsudo
(oder eine andere App). Andernfalls wird es als "Standard" -Benutzer installiert und hat keinen Root-Zugriff.Was die zweite Frage betrifft, einmal
sudo
auf dem verwurzelten Telefon installiert, fordern die Apps, die es benötigen, es meiner Erfahrung nach einfach an, und Sie erhalten eine Popup-Eingabeaufforderung.quelle
Sie berühren einen kritischen Punkt in Ihrer Frage: Ein typisches Linux-Installations-IS-Rooting: Sie booten von einer Live-CD und überschreiben den Bootsektor der Festplatte, um Ihren eigenen Code zu laden.
Es ist nur so, dass das Rooten eines PCs weniger anstrengend ist als auf einem semi-eingebetteten Gerät wie einem Telefon, so dass die Leute häufig vergessen, dass das Installieren eines zweiten Betriebssystems mit Dual-Boot im Wesentlichen das Rooten ist (das einzige, mit dem Sie dagegen ankämpfen können, ist das BIOS Secure Boot, kann aber leicht zurückgesetzt werden).
Und das Betriebssystem auf dem Android-Gerät wird mit
sudo
installiertem Befehl (oder ähnlichem) einfach nicht ausgeliefert .quelle