Tolino Shine 1.3 Root
Leider ist momentan keine Möglichkeit bekannt den Tolino Shine mit aktueller Software zu Rooten, ohne das Gehäuse zu öffnen.
Mit ein bisschen Technischem Verständnis und ein wenig Fingerspitzengefühl kann man Root realisieren ohne das Gerät ganz auseinander zu bauen.
Benötigt wird hierfür ein 3,3V UART zu Seriell Wandler, FTDI, MAX3232 oder ähnliches. Ein starker Fingernagel oder ein Gitarrenplektrum (Tipp von Vaske). Die Plattform-Tools aus dem Google Android Developer Toolkit. Und die SU Binary aus dem ALLESebook.de Tolino Shine Root Kit.
Zunächst öffnet man das Gehäuse und Schließt die Console an, wie in meinem Artikel Analyse des Tolino Shine beschrieben.
Nun öffnet man ein Terminal Programm (Putty) und verbindet sich mit der seriellen Schnittstelle und der Geschwindigkeit 115200 Mode 8n1.
Danach muss der eingeschaltet werden, im Sleep Modus wird das ganze System tatsächlich in den Ruhezustand versetzt und es passiert Garnichts.
Es kann sein, dass man die Kabelverbindung ein bisschen justieren muss, bis es geht.
Nach dem drücken der Enter Taste, sollte man einen Prompt bekommen und mit dem Befehl id sieht man auch gleich, dass man schon root ist.
bash-3.2# id uid=0(root) gid=1007(log)
Jetzt startet man den ADB wie folgt.
bash-3.2# start adbd warning: 'adbd' uses 32-bit capabilities (legacy support in use) enabling adb
Schließt man das Gerät nun über USB an den PC, wird man feststellen, dass ein neues Device hinzugekommen ist, in der Regel wird er dafür keinen Treiber finden, da die ADB Device ID vom Tolino Shine dem Treiber unbekannt ist.
Nun muss man noch die Datei android_winusb.inf aus dem Android ADB USB Driver editieren und die folgende Zeile in den beiden Abschnitten [Google.NTx86] und [Google.NTamd64] einfügen.
%CompositeAdbInterface% = USB_Install, USB\VID_1F85&PID_1689&MI_01
Der Treiber kann nun für das neue Device ausgewählt und installiert werden.
Jetzt muss man nur noch dem adb client die USB ID übermitteln. Dazu muss die Datei %USERPROFILE%\.android\adb_usb.ini angelegt oder editiert werden, mit dem Inhalt 0x1f85 .
Der Befehl auf dem PC adb devices sollte nun den Tolio auflisten.
D:\adt-bundle-windows-x86_64-20131030\sdk\platform-tools>adb devices * daemon not running. starting it now on port 5037 * * daemon started successfully * List of devices attached 2041**** device
Die SU Binary kann man bequem über den Explorer auf den Tolino kopieren, danach die Freigabe wieder deaktivieren.
Installation der SU Binary wie folgt über die serielle Console:
bash-3.2# mount -o rw,remount /dev/block/mmcblk0p2 /system bash-3.2# ln /system/bin/busybox /system/bin/cp bash-3.2# ln /system/bin/busybox /system/bin/vi bash-3.2# cp /sdcard/su /system/xbin/su bash-3.2# ln -s /system/xbin/su /system/bin/su bash-3.2# chmod 6755 /system/xbin/su
Zeile 1: System Partition schreibbar mounten
Zeile 2: cp Kommando aktivieren
Zeile 3: vi Kommando aktivieren
Zeile 4: su Binary kopieren
Zeile 5: Symlink der su Binary anlegen
Zeile 6: Berechtigung der su Binary anpassen
Jetzt kann man über den PC die funktion der SU Binary testen:
D:\adt-bundle-windows-x86_64-20131030\sdk\platform-tools>adb shell $ su su # id id uid=0(root) gid=0(root) groups=1003(graphics),1004(input),1007(log),1009(mount),1011(adb),1015(sdcard_rw),3001(net_bt_admin),3002(net_bt),3003(inet)
Damit nun der ADB bei einem Neustart des Tolino wieder mit gestartet wird, kann man in der Datei /system/bin/hw_check.sh den Befehl start adbd einfügen.
Höchstwahrscheinlich ist die ganze Prozedur nicht Updatesicher, da bei einem Update des Tolio die gesamte System Partition überschrieben wird. Mich persönlich stört das nicht, da ich meinen Tolino nicht ins WLan eingebunden habe und die Bücher nur über USB ablege.