Freerunner (Android): SD Card vorbereiten

Dieser Artikel beschreibt, wie man auf Ubuntu 9.04 eine SD Card zur Installation von Android auf Freerunner erkennt, partitioniert und mit den korrekten Dateisystemen ausstattet.

450px Cyborg from flickr ubuntu tail shell openmoko open source linux hardware freerunner dmesg android 9.04

Partitionieren für Android

Diese Anleitung sollte größtenteils auch für andere Betriebssysteme gültig sein und bezieht sich auf die Installation auf den internen Flash des Freerunner. Die zweite Möglichkeit, Android direkt auf die sd card zu installieren, wird hier im englischen Wiki beschrieben. Den Vorgang des Flashens an sich habe ich bereits in einem früheren Artikel beschrieben. (Bildquelle: Wikimedia – Lizenz:Creative Commons Attribution ShareAlike 2.0)

Einstieg
Anders als bei Open Moko images benötigt eine Installation von Android auf Freerunner zwei Partitionen: Die erste Partition (/dev/mmcblk0p1) muss im Format FAT sein. Auf dieser Partition (später als /sdcard gemountet) werden all die schönen Bildchen, mp3s und andere Daten landen. Android benötigt eine zweite Partition (/dev/mmcblk0p2, später als /data gemountet), um betriebssystemspezifische Android-Daten zu speichern (Format: ext3).

SD Card erkennen
Zunächst überprüfen wir ob die SD Card überhaupt von unserem Desktopsystem erkannt wird und wie sie bezeichnet wird. Wir müssen die SD Card also über irgendeine beliebige Schnittstelle (hier: SD Card Slot) für Jaunty zugänglich machen. Nach dem Einstecken in den SD Slot poppt bei meinem Jaunty ein Fenster auf, wodurch ich weiß, dass die Karte von Ubuntu erkannt wurde. Um mehr Infos zu erhalten nutze ich auf der Kommandozeile ein ` dmesg |tail ‘ :

# dmesg | tail
[ xxxx.xxxxxx] mmc0: new SDHC card at address 8fe4
[ xxxx.xxxxxx] mmcblk0: mmc0:8fe4 SU08G 7.40 GiB

Meine “8 GB” Karte trägt also die Gerätebezeichnung /dev/mmcblk0 und wird mit 7,4 GB Fassungsvermögen angegeben.

SD Card partitionieren
Mit fdisk kann man die SD Card partitionieren und eigentlich auch die entsprechenden Dateisysteme erstellen. Während auf meiner 2GB SD Card fdisk beide Aufgaben mit Bravour gelöst hat, funktionierte dies bei meiner 8GB Karte nicht. Die Dateisysteme wurden zwar scheinbar korrekt angelegt. Doch weder erkannte Android später das Dateisystem (Bootvorgang abgebrochen), noch erkannte 9.04 die Dateisysteme. Die Lösung war schließlich, mit fdisk zu partitionieren und mit mkfs die Dateisysteme anzulegen. Wir starten fdisk also mit:

sudo fdisk /dev/mmcblk0

Wir legen die erste Partition als FAT an, die zweite als ext3. In meinem Fall legte ich die erste Partition als FAT16 mit 3 GB an. Für die Android-Partition spendierte ich großzügige 312 MB. Hier einige fdisk Optionen:

m    zeigt alle Optionen an
d    löscht eine Partition
n    legt eine neue Partition an
t    ändert den Dateisystemtyp einer Partition
p    zeigt die Partitionstabelle an
q    beendet fdisk ohne zu speichern
w    beendet fdisk und speichert alle Änderungen unwiderruflich

Dateisysteme anlegen:
Nun wollen wir der ersten Partition ein FAT16 Dateisystem verpassen, welches zur späteren besseren Erkennung das label “fat_andr” (Bezeichnung frei wählbar) tragen soll. Wer FAT32 will, nimmt die Option “-F 32”: sudo mkfs.vfat -n fat_andr -F 16 /dev/mmcblk0p1 Analog dazu erstellen wir nun ein ext3 auf der zweiten Partition mit dem label “sys_andr”: sudo mkfs.ext3 -L sys_andr /dev/mmcblk0p2 Fertig!

Android installieren/flashen:
Nun können wir die SD Card an Freerunner übergeben und Android durch Flashen mit dfu-util installieren.  Sehr nützlich ist auch das englische Wiki (siehe links weiter unten), ohne das dieser Artikel sowieseo nie zustande gekommen wäre. Ein deutschsprachiges Forum zu Android auf Freerunner gibt es bei freeyourphone.de

http://netz10.de/2009/05/05/android-auf-freerunner-einstieg-und-usb-networking/
http://wiki.openmoko.org/wiki/Android_on_Freerunner#On_Linux

http://wiki.openmoko.org/wiki/Android_on_Freerunner#Installing_Android_on_an_SD_card

http://www.freeyourphone.de/portal_v1/viewforum.php?f=18

Comments are closed