Gerät: Android-Tablet ohne Markenzeichen
Android: 2.2
Ich habe versucht, mein Tablet mit meinem Ubuntu 11.10-Rechner zu rooten.
Ich habe die folgenden Anweisungen von einer Website befolgt:
1. adb Install Superuser.apk
2. adb push busybox /sdcard/
3. adb push su /sdcard/
Im selben Terminal öffnen wir jetzt adb:
adb shell
Geben Sie den Befehl für Superuser ein
su
Jetzt kopieren Sie diese Befehle und fügen sie ein:
1. mount -o remount,rw /system
2. mv /system/xbin/su /system/xbin/oldsu
3. cp /sdcard/busybox /system/bin/busybox
4. cp /sdcard/su /system/bin/su
5. chmod 06755 /system/bin/su
6. chmod 0755 /system/bin/busybox
7. ln -s /system/bin/su /system/xbin/su
8. exit su (may say something about a bad number
9. exit
10. adb reboot
Ich konnte den ersten Mount-Befehl nicht ausführen, fuhr aber trotzdem mit den restlichen 9 Befehlen fort. Dann habe ich nach dem Neustart eine Root-Checker-App ausgeführt, um zu überprüfen, ob mein Gerät gerootet ist. Es zeigte keinen Root-Zugriff an.
Ich habe dann erneut adb shell ausgeführt und beim Ausführen von su gab es einen Fehler:
su: 1: Syntax error: "(" unexpected
Jetzt kann ich diese Datei nicht einmal löschen. Ich stecke fest und versuche zum ersten Mal, ein Android-Gerät zu rooten. Ich habe keine Ahnung, was jetzt getan werden sollte, um dieses Problem zu lösen und mein Gerät erfolgreich zu rooten.
Offensichtlich su
funktioniert die von Ihnen installierte Binärdatei nicht gut mit Ihrem System. Da Sie glücklicherweise eine Sicherungskopie der ursprünglichen su
ausführbaren Datei erstellt haben, empfiehlt es sich, zuerst die inkompatiblen Änderungen rückgängig zu machen:
adb shell
$ oldsu
# mount -o remount,rw /system
# rm /system/xbin/su /system/bin/su
# cp /system/xbin/oldsu /system/xbin/su
# exit
$ exit
adb reboot
Erläuterung: Starten Sie adb shell
und werden Sie root (unter Verwendung der funktionierenden oldsu
ausführbaren Datei). Löschen Sie /system/xbin/su
(was jetzt nur ein Symlink ist) und die inkompatible /system/bin/su
, und kopieren Sie dann die Arbeit su
dorthin zurück, wo sie hingehört. Verlassen Sie dann die Root-Shell und schließlich die Adb-Shell. Der Neustart ist optional und sollte nicht erforderlich sein. Optional können Sie busybox
es auch entfernen (oder behalten, wenn es funktioniert). Vor dem Beenden adb shell
möchten Sie vielleicht testen, ob es su
wieder funktioniert, nur um sicherzugehen (weshalb ich cp
dafür geschrieben habe: Wenn etwas schief geht, haben Sie immer noch Ihr oldsu
verfügbares).
Mit diesen Schritten sollten Sie zumindest alles wieder funktionsfähig haben, und dieses Problem ist gelöst. Das Update auf eine neuere Android-Version ist ein separates Thema: Bitte überprüfen Sie das Update- Tag, da bereits entsprechende Fragen bestehen. Gleiches gilt für das ROM, das Sie möglicherweise benötigen (überprüfen Sie das ROM- Tag darauf und überprüfen Sie auch die Tag-Wikis auf update und rom ).
ce4
geffchang
Izzy
adb shell
stellt er aussu
– was noch nicht da ist. Nicht root zu sein,mount
kann nicht funktionieren, daher kann das Zeug nicht auf die/system
Partition kopiert werden. Was mich ein wenig verwirrt, ist Schritt 2 – was impliziert, dasssu
bereits vor dem Rooten eine verfügbar ist. Ich habe das nie überprüft; ist das so? Man könnte also Root-Berechtigungen über ADB auf einem nicht gerooteten Gerät erhalten? Ich bezweifle das, denn warum brauchen wir dann Exploits, um Geräte zu rooten?Matthieu Harle
Zephyr
Zephyr
Izzy
#
an der Shell bedeutet, dass Sie root sind, genau. Also, wie sich Shywim schon gefragt hat, warum wollten Sie ein gerootetes Gerät rooten? Macht keinen Sinn. Um Ihre Änderungen rückgängig zu machen, müssen Sie zuerst root werden – was Sie gerade gebrochen haben. Versuchen Sieoldsu
, anstattsu
root zu werden, es könnte gut sein, dass nur das "Neuesu
" irgendwie inkompatibel ist.Izzy
Zephyr