IPod und Linux

Aus BraLUG-Wiki

Wechseln zu: Navigation, Suche
iPod shuffle

Inhaltsverzeichnis

Motivation

Apple hat es dem Linuxianer nicht leicht gemacht, Musik mittels dem freien Betreibssystemes auf den iPod zu laden. Im Gegensatz zu anderen vergleichbaren mp3-Playern, läßt sich zwar der iPod als USB-Storage-Device in das System einbinden, aber das Kopieren der Musik auf den Stick genügt nicht. Vorallen die unbedingt erforderliche Playliste entspricht keinem üblichen Standard. Desweiteren werden die Dateien in einer vorgegeben Verzeichnisstruktur abgelegt.

Zum Glück scheint aber der iPod auch unter der Open-Source-Entwicklerszene verbreitet zu sein. Es existieren eine Reihe von Programmen/Tool, die das Betanken des iPods mehr oder weniger komfortabel ermöglichen. Einige von ihnen sollen hier kurz vorgestellt werden. Da ich selbst einen iPod shuffle besitze, werden hier nur Tools erwähnt, die selbigen auch unterstützen. Prinzipiell ist alles hier gesagte auf die großen iPod-Brüder übertragbar.

Programme/Tools

gnupod

Bei gnupod handelt es sich um eine Sammlung von Perl-Scripten, welche es ermöglichen via Kommandozeile den iPod zu verwalten. Hier die wichtigsten Schritte, um Musik auf den Stick zu laden (dabei wird jeweils angenommen, dass der iPod auf /mnt/usb/ eingebunden wurde):

Als erste muß der iPod für gnupod vorbereitet werden. gnupod verwaltet die Playliste zuerst in einer eigenen Datei, aus der zum Schluß dann die eigentliche iTunesDB des iPods generiert wird. Folgendes Kommando muß dazu einmalig aufgerufen werden:

gnupod_INIT -m /mnt/usb


Als nächstes sind die mp3-Dateien auf den iPod zu kopieren. Hierzu verwendet mann das Tool gnupod_addsong. Bei der Angabe der Musikdateien können mehrere Dateien in einer Liste oder auch Wildcards verwendet werden, also z.B.:

gnupod_addsong -m /mnt/usb Datei1.mp3 Datei2.mp3

oder

gnupod_addsong -m /mnt/usb Verzeichnis/*.mp3

Es bietet sich somit auch an eigene Datelisten zu erstellen bzw. auch aus Playlisten (.m3u) via einfacher Scriptverarbeitung die Dateinamen zu generieren. Wenn ich mal viel Zeit habe, schreibe ich mal ein schickes Script...

Weiterhin ist zu beachten, dass auf dem iPod nicht unendlich viel Platz ist. Mein iPod shuffle hat eine nominelle Größe von 512MB. Allerdings scheinen ca. 12MB davon für die Verwaltungsdaten, Firmware usw. drauf zu gehen. Es bleiben also ca. 500MB für Musik übrig. Das df-Kommando gibt irgendwelche utopischen Zahlen für den freien Speicherplatz an. Mittels du-Kommando bekommt man aber verläßliche Zahlen über die Verzeichnisgrößen. Interessant ist dabei das Verzeichnis iPod_Control/Music. Dieses sollte nicht größer als besagte 500MB werden. Auch hier könnte ein, noch zu schreibendes Script mehr Komfort liefern...


Ok, jetzt hat man die mp3-Files auf dem iPod. Es fehlt jetzt noch die Generierung der iTunesDB. Dies erledigt man mit dem Befehl mktunes, also:

mktunes -m /mnt/usb

Hiermit stehen jetzt die mittels gnupod übertragenen Musikstücke auch in der iTunesDB und können auch mit Tools verwaltet werden, die mit dieser Datenbank arbeiten (z.B. das apple-eigene iTunes). Der umgekehrte Weg geht überings ebenfalls. Mittels Kommando:

tunes2pod -m /mnt/usb

importiert man die Daten aus der iTunesDB in die Einträge in das gnupod-Format und kann diese dort verwalten.


Jetzt muß noch der Stick aus dem Dateisystem via umount ausgehangen werden und dem Musikgenuß steht nichts mehr im Weg.


Achso, wie löscht man die Dateien wieder vom iPod? gnupod stellt dafür des Tool gnupod_search zur Verfügung. Wie der Name es schon fast suggeriert, man kann sich mit diesem Befehl den Inhalt des iPods anschauen bzw. durchsuchen.

gnupod_search -m /mnt/usb -i "[1-9]"

bringt zum Beispiel alle Titel zu Tage (-i "[1-9] -> alle IDs die eine Ziffer enthalten -> faktisch also wirklich alle). Mittels anderer Parameter statt -i (für ID) kann man auch nach Titel (-t), Album (-l), Interpret (-a) suchen. Als Suchkriterium können reguläre Ausdrücke verwendet werden. Hängt man dem ganzen Suchbefehl noch ein --delete an, werden die Treffer gelöscht. Nach dem Löschen natürlich mktunes (siehe oben) nicht vergessen, damit gnupodDB und iTunesDB nicht auseinander laufen!


Weiterführende Informationen zu den Tools erhält man beim Studium der gnupod-Dokumentation.

tk_gnupod

Bei tk_gnupod handelt es sich um eine kleine grafische Oberfläche, welche die gnupod-Kommandozeiletools kapselt. Wie sollte es anders sein, wenn dieses Programm von mir (Uwe Berger) stammt -> es ist in TCL/TK geschrieben. Alles weitere dazu ist in der README zu diesem Programm zu lesen...

gtkpod

Bei gtkpod handelt es sich um ein grafisches Tool, welches die gtk-Libs verwendet. Die Bedienung lehnt sich, zumindestens was das Beladen und Verwalten des iPods betrifft, an das Apple-Tool iTunes an. In den neueren Versionen wird auch der iPod-Shuffle unterstützt.

amarok

Amarok ist ein weiteres grafisches Tool zur Verwaltung von mp3, welches speziell für KDE implementiert ist. Auch hier soll in den neueren Versionen das Betanken von iPods, auch iPod shuffle, möglich sein. Probiert habe ich es aber nicht, da ich mit gnupod (siehe oben) recht zufrieden bin...

Hinweise

Filesystem des iPods nicht mehr beschreibbar

Neulich stürzte bei mir gnupod während des Beschreiben des iPods ab. Ergebnis war, dass das Filesystem teilweise zerstört war und nur noch lesend einbindbar war.

Was nun? Mit gnupod-Mitteln ist da nichts mehr machbar, die wollen ja alle schreibend zugreifen. Lösung war, fdisk (natürlich das von Linux ;-)...) im Expertenmodus zu starten und die Partitionstabelle einfach nochmal neu schreiben. Danach waren auch wieder Schreibzugriffe möglich.

'Persönliche Werkzeuge