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

Mounten einer ext2-Partition beim Booten unter GINGERBREAD

Dieses Thema im Forum "Android OS Entwicklung / Customize" wurde erstellt von Michael M., 16.09.2011.

  1. Michael M., 16.09.2011 #1
    Michael M.

    Michael M. Threadstarter Android-Experte

    Beiträge:
    579
    Erhaltene Danke:
    69
    Registriert seit:
    13.07.2011
    Hi!

    Ich verzweifel so langsam an dem Problem... Im XDA-Forum blieb diese Frage unbeantwortet und wurde mehrfach gestellt. Auch im Android-Developers.de-Forum konnte mir noch niemand helfen.

    Es wird wohl das beste sein ich stelle mal alles zusammen, was ich bisher so versucht hab und vielleicht können ein paar Anregungen hier mich weiterbringen, denn in Sachen Android und Linux bin ich noch verhältnismäßig grün hinter den Ohren.


    Ganz kurz die Ausgangssituation:
    Wir durften die Link2SD beta für Gingerbread auf dem Ace testen. Dabei hat sich rausgestellt, dass die ext2-Partition beim Booten nicht gemounted werden kann. Es muss ein Quick Reboot, also ein Neustart der Android-UI durchgeführt werden, damit die Partition gemounted werden kann. Link2SD bietet das auch an. Also verwendbar ist sie. Das ist nicht das Problem.

    Allerdings hat sogar der Entwickler aufgegeben das Mount-Problem in den Griff zu bekommen. Und was da so an *.bak-Dateien alles rumfährt an den unterschiedlichsten Orten lässt darauf schließen, dass er es durchaus lange versucht hat.


    Also der letzte Versuch schien wohl die "install-recovery.sh" gewesen zu sein. Diese hat folgenden Inhalt:

    Code:
    #!/system/bin/sh
    #added by link2sd
    sleep 10
    mount -t ext2 -o rw /dev/block/vold/179:2 /data/sdext2
    mount -t ext2 -o rw /dev/block/mmcblk0p2 /data/sdext2
    
    Unter /system/etc/init.d/ liegt noch einmal eine Datei "link2sd" mit dem selben Inhalt. Die Methode scheint aber gescheitert zu sein, da das Script ja durch den Dateinamen gar nicht ausgeführt wird. (Und selbst wenn man das anpasst und es rennt -> es funktioniert nicht)


    Hier der Thread, den ich im Android-developers-Forum geöffnet habe mit ein paar mehr Infos: Partition auf der SD-Karte beim Booten mounten


    Was ich heute vorhatte war die init.rc zu bearbeiten und die mount-Befehle da einzubauen. Nun weiß ich nur grob was es mit der init.rc auf Sich hat... Macht das was ich vorhabe überhaupt Sinn?

    Wie würdet ihr da vorgehen? Es kann echt jede Vermutung, jedes Gedankenspiel weiterhelfen. Also haut raus was euch einfällt. Ich brauch einfach ein bisschen Unterstützung was die ganze "init-Sache" angeht. Ich hab mich durch so viele Anleitungen gelesen, dass ich mittlerweile gar nicht mehr weiß was stimmt.

    Also Ziel ist echt schlicht und einfach, dass das mounten auf Anhieb beim Booten klappt.
    Wenn mir jemand sagen kann, dass das aus irgendwelchen Gründen (noch) nicht geht, dann ist das für mich genauso wertvoll wie eine Lösung. Dann kann ich die Sache ruhen lassen.
    Aber ein klares "Das geht nicht weil, ..." hab ich halt auch noch nirgends gelesen.


    Vielleicht zum Einstieg eine Frage aus Interesse:

    Kann mir jemand erläutern was es mit den 2 mount-Befehlen auf sich hat? Ich hab das hier noch nirgends gesehen: /dev/block/vold/179:2
    Warum zwei mal gemounted wird ist mir auch schleierhaft.

    Vielleicht finden wir ja so den Einstieg.
    Und die Frage ob ein mounten über die init.rc Sinn macht ist mir noch wichtig zum Verständnis.

    Danke schonmal für die Hilfe!:sad:
     
  2. Freerunner, 16.10.2011 #2
    Freerunner

    Freerunner Android-Hilfe.de Mitglied

    Beiträge:
    111
    Erhaltene Danke:
    42
    Registriert seit:
    16.10.2011
    Fehlt *eventuell* was im Root Dateisystem, welches sich in der initrd des Kernels befindet. Suchstichworte: bootimg-unpack.pl, boot.img

    Signatures are overrated...
     

Diese Seite empfehlen