Den iPod mit Gentoo Linux benutzen

Aus Gentoo Linux Wiki

Wechseln zu: Navigation, Suche
Dieser Teil ist Artikel der Hardware Serie.
Laptops Motherboards Servers Eingabegeräte RAID Controller TV Karten Wireless Andere Hardware Andere Architekturen alphabetischer Hardware Index


Inhaltsverzeichnis

[Bearbeiten] Übersicht

Diese Anleitung erklärt, wie man einen iPod mit einem Gentoo Linux System verbindet. Die Informationen dazu sind meine Erfahrungen (Anm. d. Ü.: des Autors der originalen englischen Version), meinen eigenen iPod zum Laufen zu bringen. Folgende Hard- und Software wurden dabei verwendet:

  • iPod der 4. Generation, Mac-formatiert
  • Firewire
  • Kernel 2.6.8

Benutzern anderer Hard- und Software-Konstellationen wird diese Anleitung hoffentlich ebenfalls nutzen.

[Bearbeiten] Vorbereiten des iPods

Gleichgültig, ob der iPod unter Mac oder Windows formatiert wurde, kann er unter Linux sehr gut eingesetzt werden.

Wenn Du einen "Mac-formatierten" iPod besitzt, kannst Du mit dem Kernel 2.6.8 sehr gut auf das HFS+-Datei-System zugreifen. Einige Webseiten behaupten zwar, die Unterstützung für HFS+, auch im 2.6er Kernel, sei immer noch "experimentell". Wie dem auch sei, in meiner Kernelkonfiguration (der Konfiguration des "Original-Autors", Anmerk. des Übersetzers) ist die Unterstützung nicht als "experimentell" gekennzeichnet, und ich hatte bis jetzt nur gute Erfahrungen, sowohl bei Schreibe- als auch bei Lesevorgängen.

Für einen "Windows-formatierten" iPod reicht es aus, den Support für vfat (fat32) zu aktivieren.

Weitere Anpassungen sind nicht notwendig.

[Bearbeiten] Kompilieren der richtigen Kernelmodule

Folgendes ist zu beachten:

  • Diese Auflistung ist nicht als absolut vollständig zu verstehen. Sie sollte trotzdem die meisten (wenn auch vielleicht nicht alle) iPod-spezifischen Module beinhalten, die benötigt werden.
  • Es wird angenommen, dass ein HFS+ (Mac) formatierter iPod via Firewire an das System angeschlossen wird. Wenn du einen FAT32(Win)-formatierten iPod anschließen möchtest, musst du den Support für das fat32-Dateisystem einbinden. Für den Fall, dass du den iPod mittels USB2 anschließen möchtest, musst Du dir dazu noch ein entsprechendes Tutorial suchen.
  • Zudem wird davon ausgegangen, dass du einen 2.6.8er Kernel benutzt. Solltest Du einen älteren Kernel benutzen, dann wirst du andere Ergebnisse bekommen, vor allem, wenn du versuchen solltest, den iPod mit einem 2.4er Kernel zu nutzen.
  • Die nun untenstehende Auflistung beschreibt einen Teilinhalt der Datei /usr/src/linux/.config.
Datei: /usr/src/linux/.config
 # Partition Types 
 # 
 CONFIG_PARTITION_ADVANCED=y 
 # CONFIG_ACORN_PARTITION is not set 
 # CONFIG_OSF_PARTITION is not set 
 # CONFIG_AMIGA_PARTITION is not set 
 # CONFIG_ATARI_PARTITION is not set 
 CONFIG_MAC_PARTITION=y 
 CONFIG_MSDOS_PARTITION=y 
 # CONFIG_BSD_DISKLABEL is not set 
 # CONFIG_MINIX_SUBPARTITION is not set 
 # CONFIG_SOLARIS_X86_PARTITION is not set 
 # CONFIG_UNIXWARE_DISKLABEL is not set 
 # CONFIG_LDM_PARTITION is not set 
 # CONFIG_SGI_PARTITION is not set 
 # CONFIG_ULTRIX_PARTITION is not set 
 # CONFIG_SUN_PARTITION is not set 
 # CONFIG_EFI_PARTITION is not set

 # 
 # Miscellaneous filesystems 
 # 
 # CONFIG_ADFS_FS is not set 
 # CONFIG_AFFS_FS is not set 
 # CONFIG_HFS_FS is not set 
 CONFIG_HFSPLUS_FS=y 
 # CONFIG_BEFS_FS is not set 
 # CONFIG_BFS_FS is not set 
 # CONFIG_EFS_FS is not set 
 # CONFIG_CRAMFS is not set 
 # CONFIG_VXFS_FS is not set 
 # CONFIG_HPFS_FS is not set 
 # CONFIG_QNX4FS_FS is not set 
 # CONFIG_SYSV_FS is not set 
 # CONFIG_UFS_FS is not set 

 # 
 # IEEE 1394 (FireWire) support 
 # 
 CONFIG_IEEE1394=y 
 
 # 
 # Subsystem Options 
 # 
 # CONFIG_IEEE1394_VERBOSEDEBUG is not set 
 # CONFIG_IEEE1394_OUI_DB is not set 
 # CONFIG_IEEE1394_EXTRA_CONFIG_ROMS is not set 
 
 # 
 # Device Drivers 
 # 
 
 # 
 # Texas Instruments PCILynx requires I2C 
 # 
 CONFIG_IEEE1394_OHCI1394=y 
 
 # 
 # Protocol Drivers 
 # 
 # CONFIG_IEEE1394_VIDEO1394 is not set 
 CONFIG_IEEE1394_SBP2=m 
 # CONFIG_IEEE1394_SBP2_PHYS_DMA is not set 
 # CONFIG_IEEE1394_ETH1394 is not set 
 # CONFIG_IEEE1394_DV1394 is not set 
 # CONFIG_IEEE1394_RAWIO is not set 
 # CONFIG_IEEE1394_CMP is not set 
 
 # 
 # SCSI device support 
 # 
 CONFIG_SCSI=y 
 # CONFIG_SCSI_PROC_FS is not set 
 
 # 
 # SCSI support type (disk, tape, CD-ROM) 
 # 
 CONFIG_BLK_DEV_SD=m 
 # CONFIG_CHR_DEV_ST is not set 
 # CONFIG_CHR_DEV_OSST is not set 
 # CONFIG_BLK_DEV_SR is not set 
 CONFIG_CHR_DEV_SG=m 
 
 # 
 # Some SCSI devices (e.g. CD jukebox) support multiple LUNs 
 # 
 CONFIG_SCSI_MULTI_LUN=y 
 # CONFIG_SCSI_CONSTANTS is not set 
 # CONFIG_SCSI_LOGGING is not set 
 
 # 
 # SCSI Transport Attributes 
 # 
 # CONFIG_SCSI_SPI_ATTRS is not set 
 # CONFIG_SCSI_FC_ATTRS is not set


[Bearbeiten] Den iPod anschließen

Damit also dein System den iPod erkennt, sollte es reichen, wenn du ihn an den Firewire-Port steckst. Im Anschluss solltest du folgendes Resultat haben:

  • Auf dem Display des iPods sollte die "Do Not Disconnect"-Nachricht erscheinen.
  • Nach Ausführen von dmesg sollte etwa folgender Text zu lesen sein:
scsi1 : SCSI emulation for IEEE-1394 SBP-2 Devices
ieee1394: sbp2: Logged into SBP-2 device
ieee1394: Node 0-00:1023: Max speed [S400] - Max payload [2048]
  Vendor: Apple     Model: iPod              Rev: 1.63
  Type:   Direct-Access                      ANSI SCSI revision: 02
sda: Spinning up disk........ready
SCSI device sda: 39063024 512-byte hdwr sectors (20000 MB)
sda: Write Protect is off
sda: Mode Sense: 04 00 00 00
SCSI device sda: drive cache: write through
 /dev/scsi/host1/bus0/target0/lun0: [mac] p1 p2 p3
Attached scsi removable disk sda at scsi1, channel 0, id 0, lun 0
Attached scsi generic sg0 at scsi1, channel 0, id 0, lun 0,  type 0

Nun sollten auch die entsprechenden "/dev/sd*"-Verzeichnisse vorhanden sein. Im obigen Beispiel ist das SCSI-Device "sda", daher sollte für jede Partition des iPods ein "/dev/sda*/"-Verzeichnis vorhanden sein, für einen Mac-formatiertes Gerät drei Partitionen, für ein PC-formatiertes Gerät zwei.

Falls Sie sich für udev anstatt für devfs entschieden haben erstellen Sie eine Datei in /etc/udev/rules.d, wie z.B. 10-local.rules und fügen die folgende Zeile zu dieser Datei hinzu:

Datei: /etc/udev/rules.d

Für einen Windows Formatierten iPod:

BUS=="scsi", SYSFS{model}=="iPod            ", KERNEL=="sd?2", NAME="%k", SYMLINK="ipod"

Für einen Apple Formatieren iPod:

BUS=="scsi", SYSFS{model}=="iPod            ", KERNEL=="sd?3", NAME="%k", SYMLINK="ipod"


Auf den iPod, wenn mittels dieser udev-Regel und via USB oder Firewire verbunden, kann nun über /dev/ipod zugegriffen werden.

[Bearbeiten] Den iPod mounten

Wie man den iPod mountet, hängt zum einen von dem SCSI-Device ab, welches man benutzt, und zum anderen davon, ob man einen Mac- oder PC-formatierten iPod einbinden will.

Zuerst zum SCSI-Device: Mittels dmesg kannst du erfahren, welches SCSI-Device du benutzt (für gewöhnlich sollte dies sda sein). Zudem sollten dir alle ensprechenden /dev/sda* Verzeichnisse angezeigt werden.

Solltest Du nun einen PC-formatierten iPod benutzen, wirst du zwei Partitionen auf dem Gerät haben. Mounte nun die zweite Partition. Bei einem Mac-formatierten Gerät wirst du drei Partitionen vorfinden, mounte hier die dritte.

Um einen fat32-formatierten iPod von /dev/ipod unter /mnt/ipod zu mounten, füge folgende Zeile in die Datei /etc/fstab ein:

Datei: /etc/fstab
/dev/ipod     /mnt/ipod     vfat     sync,nodev,nosuid,user,rw,noauto     0 0


Mittels des "nodev"- und "nosuid"-Flag wird sichergestellt, dass Daten, welche vom iPod nicht unterstützt werden, auch nicht auf dessen Festplatte abgelegt werden. Mittels des "sync"-Kommandos reduziert man die Wahrscheinlichkeit, dass irgendwelche Daten auf dem iPod zerstört werden, sollte man das Gerät vom System trennen, bevor man es ungemountet hat.

[Bearbeiten] Linux Software für den iPod

  • gtkpod Ein freies GUI zur Kommunikation mit dem iPod. Ein grossartiges Programm (und wahrscheinlich das einzig freie für Linux), um den iPod mit Titeln zu bestücken.
  • GnuPod Ein Konsolen-Programm zur Kommunikation mit dem iPod. Das Handbuch ist zudem sehr hilfreich.
  • Rhythmbox Ein Player, mit dem das Verwalten der Musiksammlung möglich ist, und der Titel vom iPod lesen kann.
  • ipodslave / kpod Ermöglicht den direkten Zugriff auf das Gerät im Konqueror via 'ipod:/'.
  • eject Ermöglicht ein angenehmes Entfernen des iPods aus dem System. Muss als root ausgeführt werden und kann mittels emerge eject installiert werden.
  • amarok Einer der beliebtesten Jukeboxes, vor allem unter KDE. Zu beachten ist allerdings, dass er mit USE="ipod" kompiliert werden muss.

[Bearbeiten] Entfernen des iPods

Um den iPod sicher entfernen zu können, sind folgende Kommandos notwendig:

a. Verbindung über FireWire:

  1. Entbinden der iPod-Partition mit Hilfe von umount $IPOD_MOUNTPOINT.
  2. Entfernen des sbp2-Kernelmoduls mit Hilfe von rmmod sbp2.

Alternativ:

Es ist nicht notwendig die beiden oben aufgeführten Schritte manuell auszuführen. Mit Hilfe von eject $IPOD_MOUNTPOINT, können beide Schritte automatisch ausgeführt werden. Die Methode ermöglicht auch das Einkompilieren des Moduls in den Kernel.

b. Verbindung über USB:

  1. Entbinden der iPod-Partion wie oben.
  2. Entfernen des Device mit eject /dev/sdX. X muss auf das System angepasst werden!

Sobald der iPod nicht mehr die "Do not disconnect"-Meldung anzeigt, kann die Verbindung schadensfrei getrennt werden.


Gegebenenfalls muss $IPOD_MOUNTPOINT durch den wirklichen Mountpoint ersetzt werden oder die Variable $IPOD_MOUNTPOINT exportiert werden.

[Bearbeiten] weiterführende Links

Des weiteren siehe auch die o.g. Links.

'Persönliche Werkzeuge