android-adb-shell-Zugriff verweigert
Habe ich gelitten mit adb.exe
.
Wollte ich adb.exe
shell-prompt gleich als bash, also habe ich beschlossen, ändern Sie die Standard-bash-binary (natürlich binary war cross-kompiliert, und alles war perfekt)
ändern bash binary folgt unten, um
adb remount
adb push bash /system/bin/
adb shell
cd /system/bin
chmod 777 bash
mv sh sh.bak
ln -s bash sh
erste änderung war erfolgreich, aber problem ist aufgetreten, wenn der zweite Versuch.
Schiebe ich neue bash-binary, aber ich vermisste ändern bash ist die Berechtigung 777, und trennen Sie adb shell
.
nach
C:\Program Files (x86)\Android\android-sdk\platform-tools>adb.exe shell
- exec '/system/bin/sh' failed: Permission denied (13) -
C:\Program Files (x86)\Android\android-sdk\platform-tools>
Ist es eine kluge Idee zu fixieren, diese Erlaubnis-problem?
bitte helfen Sie mir...
InformationsquelleAutor Joonsung Kim | 2012-06-11
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn das Gerät noch nicht abgestürzt, komplett (/system/bin/sh ist eine Abhängigkeit für eine Menge Dinge - Neustart möglicherweise nicht sehr weit kommen!) und die system partition ist noch beschreibbar, können Sie adb push eine neue Kopie von bash, wo Sie die Berechtigungs-bits beliebig auf dem host-system, bevor Sie es (Sie können die Nutzung der cygwin-oder sogar linux, um haben Berechtigungs-bits lokal)
Es klingt wie das Gerät verwurzelt ist, so dass Sie möglicherweise in der Lage sein, zu konfigurieren oder anpassen, eine terminal-emulator-app zu geben, die Sie eine Sitzung mit der backup-sh, führen Sie die backup-sh wieder als root mit einigen Eskalations-Werkzeug, und dann das problem zu beheben.
Wenn Sie eine modifizierte recovery mit adb, könnten Sie es vielleicht von dort aus mit der Montage des (normalen) system partition manuell.
Last resort " würde die Wiederherstellung von einem Anbieter unterzeichnet mit Vanille Bild.
Hoffentlich bekommen Sie un-stecken, aber vielleicht haben Sie aus dieser Erfahrung gelernt haben - ändern der Standard-shell ist wahrscheinlich nicht eine gute Idee. Besser wäre es, laden Sie Ihre custom-shell unter einem anderen Namen und führen Sie es manuell.
ich Erlaubnis in linux, und drücken Sie diese Binär auf mein Handy. aber die Erlaubnis Fehler ist immer noch aufgetreten. Ich denke Berechtigung ist nicht in der Datei-Eigenschaft. thx
Können Sie einige andere problem über die Datei-Berechtigungen, drücken Sie wieder eine Kopie der original-android-shell. Alle terminal-Anwendung, die Sie bauen, von der Quelle sollte in der Lage besonders angefertigt zu werden, was er startet, eventuell einige vorgefertigte diejenigen bieten, die als Menü-option, obwohl ich mich nicht erinnere, zu sehen, dass.
danke, ich habe das problem lösen, indem Sie das Gerät zurücksetzen
InformationsquelleAutor Chris Stratton
Eine Allgemeine Lösung für solche Dinge tun:entfernen Sie system app und alle.
InformationsquelleAutor Ankit Jain
Wenn Sie haben die jüngsten Versionen von CWM installiert, können Sie gespeichert werden
a) adb reboot recovery (starten Sie Ihr Telefon in den recovery -)
b) in CWM wiederherstellen mount /system partition ( mit Ihrem Handy ).
c) adb kill-server
d) sudo adb start-server
e) adb shell
f) Mach dein Ding setzen Ihre Berechtigung korrekt
War ich beeinflusst durch die Antwort hier https://android.stackexchange.com/questions/38085/is-it-a-hard-brick/113507#113507?newreg=6e0c0c0be98349058d3e1668532cd7dc
InformationsquelleAutor Arun Murthy