2012-07-10 8 views
5

Ich habe eine verwurzelte Tablette, die Adb Root gibt, sobald es verbindet.ADB erhalten eine Berechtigung verweigert trotz der Ausführung als root

Wenn ich adb shell Typ bekomme ich android root @:/#

Ich kann so tun und es zeigt mir keine Berechtigungen Fehler

Aber wenn ich versuche, eine Datei auf einem auszuführen SD-Karte, die bereits alle Berechtigungen erhalten hat. Ich bekomme Erlaubnis verweigert

Warum passiert das?

+0

Versuchen Sie vielleicht, das Gerät neu zu starten ... oder "adb root" auszuführen. –

Antwort

8

Die SD-Karte ist mit einem Noexec-Flag geladen, was bedeutet, dass Sie dort gespeicherte Dinge nicht ausführen können.

Dies ist doppelt wichtig, wenn Sie als root oder sogar die halbprivilegierte Shell ausführen, da das Fehlen von Dateiberechtigungen oder Eigentumsrechten bedeutet, dass eine Benutzer-ID mit der Berechtigung zum Schreiben externer Speicher das Programm, das Sie ausführen möchten, trojanisieren könnte.

Neben der Standard-Shell hat ein begrenztes Vokabular von Fehlern und in vielen Versionen wird auch sagen, verweigert als Ersatz für Befehl nicht gefunden. Ihr aktuelles Arbeitsverzeichnis befindet sich nicht im Suchpfad. Wenn Sie also etwas von dort ausführen möchten, müssen Sie in der Regel Folgendes tun:

+0

Ich habe das gleiche Problem und ist unabhängig von Ihrer Antwort. Zuerst bekomme ich diesen Fehler zufällig. Sencond, meine adb läuft in einer lokalen HD, und selbst nach cd zu den Verzeichnis-Plattform-Tools, läuft ./adb als root gibt mir "Erlaubnis verweigert". Kein adb läuft, und alles hat Berechtigungen 777 ... IMO, das ist ein adb-Fehler. –

+0

@ LuisA.Florit Sie scheinen ein Berechtigungsproblem auf dem Entwicklungscomputer zu haben, was eine ganz andere Frage ist als die auf dieser Seite gestellte, die die Berechtigungen von auf dem Gerät ausgeführten Programmen betrifft, wie von einer Shell, die über adb kommuniziert . –

+0

In Bezug auf mein Problem, welches "Berechtigungsproblem auf dem Entwicklungscomputer" sein könnte, erlaubt es mir nicht, eine Datei als root auszuführen, und mit 777 Erlaubnis? Und zufällig? Selbst als normaler Benutzer kann ich Dateien im Verzeichnis der Plattform-Tools erstellen, kann aber keine ausführbare Datei als root ausführen! AFAIK, das ist bei Linux mit einem gesunden Programm unmöglich. Eigentlich habe ich das gepoolt und ist ein häufiges Problem. ADB-Fehler, IMO. Aber ich verstehe, dass das OP ein anderes Problem haben kann als ich. –