1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

[How_To] Ext. SD Card mit Root besser nutzen! - Sony Tablet S

Dieses Thema im Forum "Anleitungen für Sony Tablet S" wurde erstellt von obicom, 09.02.2012.

  1. obicom, 09.02.2012 #1
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Das Problem:
    Wir kennen ja alles das Problem mit der externen SD Karte unter Honeycomb, (/mnt/sdcard2) also das dort abgelegte Medien Dateien nicht gescannt werden und somit nicht in den Sony Musik und Video Player Bibliotheken angezeigt werden. Sony nutzt hierfür das Transfer Tool. Warum verstehe ich bis heute nicht. :cursing:

    Die Idee:
    Wenn ich die Ordner Fotos/Video/Music unter '/mnt/sdcard2' anlegen würde, und den Inhalt der Ordner in die korrespondierenden Ordner auf der externen SD Karte, nach jedem Neustart, automatisch mounten könnte, dann wäre das oben beschriebenen Problem gelöst und der Transfer Prozess wäre überflüssig. :drool:

    Vorteile dieser Änderung:
    1. Alle Bilder, Videos und Musik auf der externen SD Karte sind sofort in den Playern verfügbar
    2. Der Transfer Prozess wird überflüssig
    3. Bei einer USB Verbindung zum PC habe ich nun über den Ordner externel_sd zugriff auf die externe SD Karte. Ohne diesen Mod nur auf die interne Karte
    4. Mir stehen jetzt die vollen 32Gb meiner Class10 SD Karte für Medien zur Verfügung und der interne Speicher kann nun komplett für Spiele und andere Dinge genutzt werden (DRM Videos z.B.)
    5. Ich hab wieder viel gelernt und bin glücklich. ;-)

    Eins vorweg !!!
    Ich bin für keinerlei Schäden oder sonstiges haftbar zu machen, wenn ich euer Gerät brickt oder sonst wie zerstört! Alles geschieht auf eure eigene Gefahr. Folgt bitte der Anleitung hier ->
    http://www.android-hilfe.de/root-ha...ck-protection-bitte-vor-dem-rooten-lesen.html
    und schützt euch auf dem dort beschriebenen Weg !!

    Die Lösung:
    Zuerst mal habe ich mir überlegt, wie man das mit dem mounten lösen könnte. Dieser Schritt war recht einfach. Man erstellt halt ein Skript für eine App wie "Scripter" oder gibt den Befehl halt per adb oder einem Terminal Emulator ein. Dies ist dann nach jedem Neustart zu wiederholen. Der benötigte mount Befehl dazu lautet:

    Das war aber erst mal nur die halbe Miete. Ich wollte ja, dass das automatisch bei jedem Neustart erfolgt und keinen manuellen Aufwand benötigt. Also musste ein Weg gefunden werden, ein Skript bei jedem Reboot als "Autostart" ausgeführt wird. Dafür gibt es unter Linux den init.d Ordner, aber das wurde auf dem Tablet S leider nicht unterstützt. :mad:

    Dann bin ich hierauf aufmerksam geworden:

    [ADDON] Startup scripts support (init.d support) for Stock ROM/Kernel - xda-developers

    Da unser Tablet das Ausführen einer Update.zip über das Recovery nicht unterstützt, musste ich erst mal den Inhalt analysieren und manuell über adb "step by step" ausführen. Wer sich ein bisschen auskennt, sollte das auch hinbekommen.

    Ich habe dazu mal ein eigenes [HOW_TO] geschrieben, das ihr hier finden könnt:
    http://www.android-hilfe.de/root-ha...ablet-s/205375-how_to-use-init-d-support.html

    Als der Schritt mit "init.d" lief, war der Rest recht einfach.
    Hab jetzt ein "AutoMount Skript" im "init.d" Ordner, das bei jedem Neustart ausgeführt wird.

    Hier nun den Inhalt meines "10automount" Skripts im init.d Ordner:

    Habe jetzt also drei Ordner auf der ext. SD Karte Angelegt: Fotos/Video/Music
    Dann habe ich alle Dateien aus den korrespondierenden Ordner der internen SD Karte, in die Ordner auf der externen Sd Karte verschoben, so das diese danach auf der internen leer waren.

    Dann habe ich das '10automount' entsprechend erstellt:


    Ich hoffe, ihr habt teilweise verstanden, was ich hier erzähle. :rolleyes2:
    Wer etwas firm in der Materie ist, sollte mein Vorgehen nachvollziehen können. Ansonsten halt hier fragen. :confused2:
     
    Zuletzt bearbeitet: 21.02.2012
    mikajo, seekape und obiwan haben sich bedankt.
  2. jannux, 09.02.2012 #2
    jannux

    jannux Android-Experte

    Beiträge:
    678
    Erhaltene Danke:
    84
    Registriert seit:
    22.09.2009
    Phone:
    auf Suche
    Tablet:
    Sony Xperia Tablet Z3 Compact
    Hallo obicom,

    ich habs mal versucht
    cd /mnt/sdcard
    ln -s /mnt/sdcard2 sdcard2

    funktioniert nicht.
    Fehlermeldung: link failed Operation not supported on transport endpoint

    Gruß Jan
     
    obicom bedankt sich.
  3. obicom, 09.02.2012 #3
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    hmmm ... ok, danke ...
    die Fehlermeldung ist mir zwar nicht ganz klar, wird aber wohl am FAT32 liegen, wie oben vermutet. Es können wohl keine sym. links von FAT32 gesetzt werden. :-(

    Was meinst du, könnte das über ein "ummounten" funktionieren, in dem man /mnt/sdcard2 unmountet und dann einen Ordner /mnt/sdcard/sd-ext/ erstellt und das Device dort hin mountet?

    -- Edit --

    Hier mal der Inhalt der vold.fstab:

    -- Edit2 --

    Ich glaub, jetzt hab ich die richtige Idee, ich hab die Datei svold.fstab gefunden, in der steht:

    Aus meiner Sicht müsste man hier doch nur die erste Zeile ändern auf:

    wenn man vorher unter /mnt/sdcard den Ordner ./external_sd angelegt hat.

    Sehe ich das richtig und was kann im schlimmsten Fall passieren?
     
    Zuletzt bearbeitet: 09.02.2012
  4. obicom, 09.02.2012 #4
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Ich hab jetzt stundenlang versucht über adb die ext. Sd Karte mit unmount vom System zu trennen um sie dann wieder mit mount unter /mnt/sdcrad/external_sd einzuhängen, leider ohne Erfolg, was aber bestimmt daran liegt, das ich mich mit Linux nicht wirklich so gut auskenne. Raus bekommen hab ich, das das Device wohl mmcblk1p1 ist. Trotzdem bekomme ich bei jedem Unmount Versuch ein unmount failed zurück. Apps wie "Drive Mount" schaffen das, aber leider kann man da keinen Pfad vorgeben, so das es mit der App immer unter /mnt/mmcblk1p1 gemountet wird.

    Wer kennt sich aus und kann mir mal ein paar Vorschläge machen, ich ich das beschriebene hin bekommen könnte?
     
  5. obicom, 11.02.2012 #5
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Also ich hab ne 50% Lösung erreicht ...

    mit folgendem Befehl über die adb shell konnte ich das Ziel, das ich am Anfang des Threads beschrieben hatte, erreichen:

    Mit dem Befehl wurde mir der Inhalt der externen SD in das Verzeichnis /mnt/sdcard(external_sd gemountet und steht somit als Inhalt der internen SD Karte zur Verfügung.

    Somit erkennt nun der Musik- und Video Player die Dateien, die auf der ext. Karte liegen und nimmt diese in seine Bibliothek mit auf.

    Das ganze ist halt nur noch nicht permanent, also nach einem Reboot der Tablets wieder weg und muss dann über adb shell erneut eingegeben werden.

    Jetzt könnte man z.B. mit der App Skripter das auch ohne PC und adb erledigen. Noch besser wäre natürlich, man könnte das in eine Datei wie /ect/init.d schreiben, nur die scheint es auf dem Tablet S nicht zu geben.

    Der Inhalt des Scripter Skripts sieht dann so aus: (Ordner /mnt/sdcard/external_sd muss schon existieren)

    Leider fehlt der App Scripter die Funktion, das er das Skript gleich beim booten ausführt, ansonsten funktioniert das aber schon mal soweit. Die App ScriptManager bekomme ich leider nicht ans Laufen auf dem Tablet S. Habt ihr ne Idee welche App das sonst kann, mit dem Ausführen beim booten? Ich wag mich nicht so recht daran, so was in die init.rc einzutragen, da ich momentan noch keinen weg kenne, wie man im schlimmsten Fall aus einem Boot Loop wieder raus kommt. Da ich mein Tablet aber sehr selten neu starte, ist das momentan aber auch kein echtes Problem. Nach einem Reboot ist das ganze in wenigen Minuten wieder, auf Knopfdruck, hergestellt.
     
    Zuletzt bearbeitet: 11.02.2012
  6. obiwan, 11.02.2012 #6
    obiwan

    obiwan Ehrenmitglied

    Beiträge:
    3,970
    Erhaltene Danke:
    1,231
    Registriert seit:
    16.12.2009
  7. obicom, 11.02.2012 #7
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
  8. obiwan, 11.02.2012 #8
    obiwan

    obiwan Ehrenmitglied

    Beiträge:
    3,970
    Erhaltene Danke:
    1,231
    Registriert seit:
    16.12.2009
    Falschen link im zwischenspeicher gehabt. ;)
    Vorteil dieser App: deinstallieren und alles bleibt beim Alten, im prinzip nach jedem werksreset.
     
  9. obicom, 11.02.2012 #9
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Auch schon auf dem Tablet S ausprobiert? Ich hab die gestern mehrfach versucht auf dem Sony Tablet zum Laufen zu bekommen, leider ohne Erfolg. Egal wie oft ich neu gestartet hatte, es wurde nie nach Root Rechten gefragt. Habe auch den Entwickler angeschrieben, aber auch er konnte mir nicht helfen.

    Hast du sie auf deinem Sony Tablet zum Laufen bekommen?
    Das wäre wirklich interessant.
     
  10. obiwan, 11.02.2012 #10
    obiwan

    obiwan Ehrenmitglied

    Beiträge:
    3,970
    Erhaltene Danke:
    1,231
    Registriert seit:
    16.12.2009
    Neee, habs nur gerade gelesen und deswegen geschrieben. Hab doch noch nichtmal rootrechte. Aber gut zu wissen das die App nicht funzt. Sony machts uns aber auch nicht leicht.

    Edit: Hab auch keinen init.d Ordner oder eine rc.local gefunden, wenn mir was auffällt schreib ich es hier.
     
    Zuletzt bearbeitet: 11.02.2012
  11. obicom, 12.02.2012 #11
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Heute habe ich noch einige Dinge ausprobiert um eine "autostart" Lösung zu finden, aber leider ohne Erfolg:

    - App "autostart (root)" läuft nicht auf dem Tablet S
    - Änderung in der "svold.fstab" benötigt noch einem Reboot einen "rein/raus" der SD Karte damit diese an die gewünschte Stelle gemountet wird
    - Änderung in der "vold.fstab" benötigt noch einem Reboot einen "rein/raus" der SD Karte damit diese an die gewünschte Stelle gemountet wird
    - Hinzufügen des mount Befehls in die "init.goldfish.sh" tuts auch nicht
    - Startup script tweaks kann es nicht tun, da es die "/system/bin/playlogosnow" auf dem Tablet S nicht gibt
    ([REF] Startup script speed tweaks - xda-developers)

    Noch jemand eine Idee um einen Autostart mount Befehls, nach einem reboot zu erreichen? [​IMG]

    -- Edit --

    Heute hab ich noch mal ein bisschen mit der "install-recovery.sh" herumprobiert...

    habe einfach mal ein "mkdir -p /mnt/sdcard/test" eingetragen, aber der rdner wurde nach einem Reboot leider nicht angelegt. Daher muss ich davon ausgehen, das das Script (leider) nicht ausgeführt wird.... [​IMG]
     
    Zuletzt bearbeitet: 13.02.2012
  12. obicom, 17.02.2012 #12
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    kurzes Update:

    Ich habe nun, aufgrund eines Artikels im XDA Forum, eine Möglichkeit gefunden, Skripte automatisch starten zu lassen. Hierfür wurde das Tablet S so modifiziert, das nun der "Linux übliche" '/system/etc/init.d' Prozess funktioniert. Hierzu werde ich in Kürze einen HowTo verfassen. Leider konnte ich aber das eigentliche Problem damit (noch) nicht lösen können. Es scheint ein (ekeliges) Timing Problem zu sein. Ich bleib aber dran .. versprochen.
     
  13. obiwan, 17.02.2012 #13
    obiwan

    obiwan Ehrenmitglied

    Beiträge:
    3,970
    Erhaltene Danke:
    1,231
    Registriert seit:
    16.12.2009
    In wiefern ein Timing Problem? Bau in das Script "sleep zahl", wobei zahl gleich Sekunden sind, ein. Dann wird das script gestartet aber der mountbefehl wird erst ausgeführt wenn alle Dienste gestartet wurden.

    Grüße
     
  14. obicom, 17.02.2012 #14
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Hi obiwan, danke für den Tipp, aber das habe ich schon alles probiert. Hab auch zwei "while" schleifen eingebaut, die warten bis die interne und externe sd Karte gemounted wurden .. danach noch einen sleep 50 .. aber immer noch ohne Erfolg. Ich kann es mir langsam auch nicht mehr erklären, warum es immer noch nicht funktioniert.

    Wenn das Tablet durchgestartet ist und ich das gleiche Skript von Hand starte, läuft alles einwandfrei. Ich habe auch eine Zeile eingeführt, die zum Test eine Datei anlegt, damit ich sicher sein kann, das das Skript überhaupt gestartet wird. Diese wird auch schön brav angelegt. Ich werde mich am WE aber weiter mit dem Thema auseinander setzen und hoffentlich noch den Fehler finden bzw. das Problem lösen.

    -- Edit --
    Ok, die magische Grenze liegt bei meinem System bei 'sleep 75'.
    Mit dem Wert geht es bei mir, denke aber das der von System zu System schwanken kann.
    Mit den 75 Sekunden kan ich mir auch die zwei 'while' Schleifen sparen.
    Auch der Rescan der SD Karte funktioniert damit. Somit ist "mein" Problem nun zu 100% gelöst.
    Frage mich jetzt nur noch, wie euch erklären soll, ich ich das geschafft habe. ;-)
     
    Zuletzt bearbeitet: 17.02.2012
  15. braindealer, 17.02.2012 #15
    braindealer

    braindealer Erfahrener Benutzer

    Beiträge:
    153
    Erhaltene Danke:
    22
    Registriert seit:
    18.12.2011
    Schon mal die init.rc probiert? so wie die aussieht werden dort alle mountpoints erstellt
     
  16. obicom, 17.02.2012 #16
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
  17. Benson, 17.02.2012 #17
    Benson

    Benson Neuer Benutzer

    Beiträge:
    15
    Erhaltene Danke:
    0
    Registriert seit:
    29.05.2010
    Da wird es wohl Zeit für ein Customs Kernel. Ich habe mit DoomLords Kernel auf dem Xperia Play das wohl schnellste Sony Handy mit ständigen 1600MHZ und CWM, sowas brauchen wir auch für unser Tablet !
    Ich hoffe wirklich das alles mit ICS besser wird. :blink:

    Derzeit mounte ich meine Sdcard2 immer per Hand, lästig aber funktioniert ...
     
  18. obicom, 18.02.2012 #18
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Hab das Problem nun für mich lösen können, weiß aber nicht ob meine Erklärung (ersten Post dieses freds angepasst) für euch nachvollziehbar ist.

    Feedback ausdrücklich erwünscht.

    P.S.: Anbei noch ein Screenshot vom Verzeichnis im Root-Explorer.
    Schaut mal oben links, in die Ecke, wieviel freien Speicher mein 16GB Tablet S jetzt für Medien usw. hat. :flapper:
     

    Anhänge:

    Zuletzt bearbeitet: 18.02.2012
  19. Nexus-Bald, 19.02.2012 #19
    Nexus-Bald

    Nexus-Bald Fortgeschrittenes Mitglied

    Beiträge:
    359
    Erhaltene Danke:
    31
    Registriert seit:
    07.09.2010
    Mit welchen Programm hast die die mount.zip komprimiert.
    ich versuche es mit 7-zip zu entpacken da kommt aber eine Meldung das kompressions- verfahren wird nicht unterstützt.
     
  20. obicom, 19.02.2012 #20
    obicom

    obicom Threadstarter Android-Experte

    Beiträge:
    745
    Erhaltene Danke:
    200
    Registriert seit:
    09.03.2010
    Mit 7-zip ...
    lässt sich bei mir problemlos öffnen, mit 7-zip und auch dem Windows Explorer.
    Ich habe mittlerweile aber meine "Taktik" geändert.
    Ich habe wieder die original vold.fstab und svold.fstab genutzt und nur noch sie Ordner "umgemountet". Das hat verschieden Gründe gehabt.

    1. Andere Player wie z.B. PlayerPro und original Android Musik Player hatten Probleme, wenn die MP3 Dateien nicht im Ordner '/sdcard/Music' lagen.

    2. DRM geschützte Dateien müssen dort liegen, wohin sie heruntergeladen wurden. heißt konnte auch die nicht einfach nach '/sdcard/external_sd/Video' verschieben.

    Habe jetzt also drei Ordner auf der ext. SD Karte Angelegt: Fotos/Video/Music
    Dann habe ich alle Dateien aus den korrespondierenden Ordner der internen SD Karte, in die Ordner auf der externen Sd Karte verschoben, so das diese danach auf der internen leer waren.

    Dann habe ich das '10automount' entsprechend angepasst:
    -- Edit --
    Hab jetzt mal den ersten Post entsprechend angepasst.
     
    Zuletzt bearbeitet: 19.02.2012

Diese Seite empfehlen