FireWire, auch als i.Link bekannt, ist eine nach IEEE 1394 spezifizierte Hardwareschnittstelle. Diese Seite ist primär für Problemlösungen bezüglich FireWire bestimmt.
Zunächst muss man überprüfen, ob das benötigte Modul geladen ist. Dazu gibt man Folgendes im Terminal [3] ein:
lsmod | grep 1394
Die Ausgabe könnte dann etwa so aussehen:
dv1394 23312 0 raw1394 32048 0 ohci1394 38088 1 dv1394 ieee1394 369784 4 dv1394,raw1394,sbp2,ohci1394
Ist kein Modul geladen sieht das so aus:
marko@marko-desktop:~$ lsmod | grep 1394 marko@marko-desktop:~$
Sollte hier das benötigte Modul nicht angezeigt werden, so muss es mit folgendem Befehl geladen werden:
sudo modprobe <modul>
Zum Beispiel:
sudo modprobe raw1394
Sollte das oben Genannte vollführt worden sein, ist das Gerät dem normalen User und den von diesem gestarteten Programmen nicht zugänglich. Um dies zu beheben geht man wie folgt vor:
Im Terminal in das Verzeichnis /etc/udev/rules.d/ wechseln
Auflisten des Verzeichnisinhalt mit dem Befehl "ls"
Eine neue Datei 50-raw1394.rules im gleichen Verzeichnis erstellen.
In der 40-permissions.rules (wenn vorhanden) nach dem Abschnitt "IEEE1394" suchen. Dort die Zeile
KERNEL=="raw1394", GROUP=="disk"
in
KERNEL=="raw1394", GROUP=="video", MODE=="0664"
umändern.
In die 50-raw1394.rules (sofern 40-permission.rules nicht vorhanden und diese Datei neu erstellt wurde) kommt nur die Zeile
KERNEL=="raw1394", GROUP=="video", MODE=="0664"
Anschließend trägt man die Nutzer, die auf diese Geräte Zugriff haben sollen, noch in die Gruppen "video" ein [2].
Es ist zu beachten, dass raw1394-Geräte uneingeschränkten Zugriff auf das System bieten (sie können z.B. den Hauptspeicher auslesen und teilweise auch hineinschreiben). Man sollte also nur vertrauenswürdige Personen in die $GRUPPE nehmen, die darauf achten, dass keine nicht vertrauenswürdigen Geräte angesteckt werden / worden sind!
wird für diesen Abschnitt dieser Code verwendet, der ins Terminal eingefügt werden kann.
echo 'KERNEL=="raw1394", GROUP=="video", MODE=="0664"' | sudo tee /etc/udev/rules.d/50-raw1394.rules && sudo restart udev
Um Videos in eine Videoschnittsoftware zu importieren ist das Paket dvgrab notwendig.
Zwei Computer über FireWire zu verbinden ist ähnlich einfach wie mit normalen Netzwerkkarten, jedoch ist es schneller, wenn man keine Gigabit-Netzwerkkarten besitzt. Beide Computer benötigen einen FireWire-Anschluss. Zum Verbinden werden die Computer über ein normales FireWire-Kabel zusammengeschlossen.
Nachdem beide Computer verbunden sind, sollte der Befehl dmesg | grep 1394 etwas Ähnliches wie hier ausgeben:
... [ 15.431906] ohci1394: fw-host0: OHCI-1394 1.1 (PCI): IRQ=[18] MMIO=[f9aff800-f9afffff] Max Packet=[2048] IR/IT contexts=[4/4] [ 15.841250] ieee1394: Host added: ID:BUS[0-00:1023] GUID[474fc000f482e50a] ... [ 2321.103535] ieee1394: Node added: ID:BUS[0-00:1023] GUID[001484f50025af2e] [ 2321.105028] ieee1394: Node changed: 0-00:1023 -> 0-01:1023
Wichtig ist die Zeile ...Node added... (oder auch Node resumed, wenn man das Kabel abzieht und wieder anschließt), das bedeutet, dass die beiden Computer korrekt verbunden sind.
Die Ethernettreiber für FireWire sind in Ubuntu standardmäßig deaktiviert. Deshalb müssen die Treiber mit "'modprobe'" geladen werden:
modprobe eth1394
Damit die Treiber beim Start von Ubuntu automatisch geladen werden, muss der blacklist-Eintrag in der Datei /etc/modprobe.d/blacklist entfernt werden. Dazu öffnet man die Datei in einem Editor mit Root-Rechten und sucht nach:
blacklist eth1394
und kommentiert die Zeile einfach aus:
#blacklist eth1394
Ab der Ubuntuversion 9.04 heißt die Datei /etc/modprobe.d/blacklist.conf.
Jetzt sollte eine neue "Netzwerkkarte" verfügbar sein. Man kann diese nun genauso wie eine herkömmliche Netzwerkkarte einrichten.
Man kann natürlich nicht nur Verbindungen zwischen Linux-Computern aufbauen, sondern auch zu Windows oder Mac OS. Unter Windows existiert dafür in den Netzwerkverbindungen eine Verbindung, die standardmäßig "1394-Verbindung" heißt.
Will man unter (K)ubuntu 11.04 eine externe Festplatte per Firewire betreiben, erhält man zunächst in /var/log/syslog Fehlermeldungen wie die folgenden:
Oct 5 19:31:49 rechner kernel: [ 937.083121] firewire_ohci: node ID not valid, new bus reset in progress Oct 5 19:31:59 rechner kernel: [ 946.586761] firewire_core: skipped bus generations, destroying all nodes Oct 5 19:31:59 rechner kernel: [ 946.586786] firewire_core: Parent port inconsistency for node 0: parent_count=1 Oct 5 19:31:59 rechner kernel: [ 946.586791] firewire_core: topology build failed
und die Platte wird nicht automatisch erkannt und eingebunden.
Startet man nun Ubuntu 10.04 von einer Live-CD, dann wird die Firewire-Festplatte sofort erkannt und kann eingebunden werden. Macht man dann einen Neustart des Rechners (Reboot, nicht aus- und einschalten) und bootet wieder Ubuntu 11.04, dann wird die Platte auch hier sofort erkannt und kann benutzt werden. Sieht so aus, als würde bei (K)ubuntu 11.04 die Firewireschnittstelle beim Booten nicht korrekt initialisiert. (Ein zwischenzeitliches Booten von 10.04 erledigt das, so daß anschließend die Firewire-Hardware auch unter 11.04 funktioniert.) Wenn ich eine Lösung für das Problem habe, werde ich hier berichten.
---
Diese Revision wurde am 26. Februar 2012 17:21 von Win32netsky erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen:
Hardware
2004 – 2012 ubuntuusers.de • Einige Rechte vorbehalten