claim.gif
Linux Magazin Linux User Easy Linux Ubuntu User International Linux Community
Erschienen in EasyLinux 10/2005

Bluetooth-Geräte unter Linux nutzen

Netz in Blau

von Marcel Hilzinger


Zahlreiche Peripherie- und Elektronikgeräte bringen heute eine Bluetooth-Schnittstelle mit. Dieser Artikel erklärt Ihnen neben einigen Grundlagen zur drahtlosen Technologie, wie Sie Daten zwischen einem Linux-Rechner und einem Bluetooth fähigen Handy austauschen und wie Sie zwei PCs über Bluetooth vernetzen.

Bluetooth ist eine relative junge drahtlose Technologie, die der schwedische Mobiltelefon-Hersteller Ericsson erfand, um mobile Geräte auf einfache Weise drahtlos vernetzen zu können. Seit 1998 koordiniert ein spezielles Konsortium die Entwicklung von Bluetooth -- die Bluetooth SIG (Special Interest Group). Zu ihr gehören Ericsson, IBM, Intel, Nokia, Toshiba, 3Com, Lucent, Microsoft und Motorola.

Die Vorteile von Bluetooth gegenüber anderen drahtlosen Technologien liegen in erster Linie im geringen Stromverbrauch und der sehr vielfältigen Anwendungsmöglichkeiten. Mit einer Reichweite von 10 Metern und einer Datenübertragungsrate von maximal 720 Kbit pro Sekunde kann die Technologie zwar beim Datentransfer nicht mit Wireless LAN mithalten, sie ist aber auf Grund ihrer Spezifikation leichter erweiterbar und so für diverse Zwecke einsetzbar. Geräte der neuesten Generation weisen eine deutlich höhere Reichweite und Datenübertragungsrate auf. Details dazu lesen Sie im Kasten "Bluetooth-Zukunft".

Bluetooth-Zukunft

Die Zukunft von Bluetooth heißt 2.0 + EDR. Mit der neuen Spezifikation will die Bluetooth Special Interest Group, die Datenübertragungsrate der Bluetooth-Geräte von den aktuellen 80 KByte/s auf 240 KByte/s erhöhen. Damit eignet sich Bluetooth potentiell auch für die Live-Übertragung von Multimediadaten, wie Audio und Video.

Die neue Spezifikation soll auch mehrere gleichzeitige Kontakte ermöglichen. Bei den heutigen Adaptern ist ein Bluetooth-Netz auf maximal acht Teilnehmer beschränkt. Da Bluetooth vermehrt auch in Tastaturen, Mäusen, Digitalkameras und weiteren PC-Peripheriegeräten zum Einsatz kommt, ist diese Grenze langfristig zu niedrig. Die neue Technik erhöht die Kapazität auf 256 Geräte.

Schließlich arbeitet die Bluetooth-SIG auch daran, die Sicherheit von Bluetooth-Verbindungen und die Reichweite der Adapter zu verbessern. Bereits jetzt gibt es USB-Adapter, die im optimalen Fall (freies Feld ohne Hindernisse) eine Reichweite von 100 Metern erreichen. In Zukunft soll dies die Standard-Reichweite werden.

Hardware und Anwendungsgebiete

Mit Bluetooth übertragen Sie Dateien von einem Mobiltelefon auf einen PC, Palmtop oder ein zweites Handy. Die Drogeriemarkt-Kette bietet zum Beispiel in einigen Filialen die Möglichkeit, digitale Photos über Bluetooth zur Entwicklung abzugeben. So können Sie Fotos direkt vom Handy ans Labor senden. Als Ersatz der Infrarot-Schnittstelle lässt es sich zur Fernsteuerung von beliebigen Anwendungen (zum Beispiel einer OpenOffice-Präsentation) oder Peripheriegeräten wie Mäusen und Tastaturen verwenden. Schließlich können Sie einen Bluetooth-Adapter auch als Netzwerkgerät benutzen.

Besitzt Ihr Rechner keine eingebaute Bluetooth-Schnittstelle, statten Sie ihn über einen so genannten USB-Dongle mit der drahtlosen Technologie aus. Je nach Hersteller und Vertrieb kostet ein Bluetooth-Dongle zwischen 20 und 40 Euro. Seit Kernel 2.6 stellt der Bluetooth Hardware-Support kein Problem mehr dar. Diesen Kernel benutzen auch die EasyLinux-Distributionen. Möchten Sie vor dem Kauf trotzdem überprüfen, ob Linux den Dongle unterstützt, können Sie dies unter http://www.holtmann.org/linux/bluetooth/devices.html tun.

Bei Suse Linux meldet sich nach dem Anschließen eines Bluetooth-Dongle automatisch die Hardware-Erkennung (Abbildung 1). Klicken Sie hier auf Ja, startet Suse Linux das Bluetooth-Modul von YaST. Funktioniert die Hardware-Erkennung nicht, starten Sie YaST über [Alt-F2] und die Eingabe von kdesu yast2. Sie finden das Bluetooth-Modul von YaST unter Hardware. Im ersten Dialog legen Sie fest, ob Sie Bluetooth-Dienste beim Systemstart aktivieren möchten. Wählen Sie hier Bluetooth-Dienste aktivieren. Die meisten Bluetooth-Dienste sind über einen PIN-Code geschützt. Um Ihren Rechner ebenfalls zu schützen, tippen Sie im Eingabefeld einen mindestens vierstelligen PIN-Code ein. Den angegebenen Code schreibt YaST in die Datei /etc/bluetooth/pin.

Abb. 1: Die Hardware-Erkennung von Suse Linux hat einen neuen Bluetooth-Adapter gefunden.

Unter dem Punkt Erweiterte Daemon-Konfiguration können Sie festlegen, welche Bluetooth-Dienste YaST starten soll. Die Vorauswahl genügt in der Regel für sämtliche Aufgaben. Bluetooth-Geräte können sichtbar und unsichtbar sein. Mit unsichtbaren Geräten können Sie nur dann eine Verbindung aufbauen, wenn Sie die Hardware-Adresse des Bluetooth-Adapters kennen. In der Grundeinstellung ist Ihr Rechner für andere Geräte sichtbar. Möchten Sie dies ändern, wählen Sie Sicherheitsoptionen und entfernen die Markierung vor der Option Inquiry Scan aktivieren. Bei Suse Linux 9.3 können Sie im ersten Dialog zudem noch den Gerätenamen festlegen (Abbildung 2). Unter diesem Namen sehen dann andere Geräte Ihren Rechner. Nach einem Klick auf Beenden speichert YaST die Einstellungen in den Konfigurationsdateien unter /etc/bluetooth und startet die Bluetooth-Dienste.

Abb. 2: Einrichten der Bluetooth-Dienste in YaST unter Suse Linux 9.3.

Benutzer von Mandrake Linux richten die Bluetooth-Dienste über System / Einstellungen / Den Computer konfigurieren ein. Nach Eingabe des Root-Passwortes wählen Sie System / Aktivieren und Deaktivieren der Systemdienste und setzen ein Häkchen vor den Eintrag Bluetooth. Ein Klick auf Start stellt die Dienste sofort bereit. Um die Bluetooth-Dienste über die Kommandozeile zu aktivieren, öffnen Sie über [Alt-F2] und den Befehl kdesu konsole ein Terminal-Fenster als Benutzer root und geben folgenden Befehl ein:

/etc/init.d/bluetooth start

Diese Vorgehensweise funktioniert auch unter Suse Linux.

Blaue Daemonen

Um mit einem Bluetooth-Gerät Daten übertragen zu können, sind mindestens zwei Programme nötig: Die Daemonen hcid und sdpd. Der hcid (Host Controller Interface Daemon) ist für den grundlegenden Kontakt zuständig. Er fungiert quasi als Schnittstelle zwischen dem Bluetooth Gerät und der Software. Darauf aufbauend vermittelt der sdpd (Service Discovery Protocol Daemon) die vom Bluetooth-Gerät angebotenen Dienste.

Zu beiden Daemonen existieren entsprechende Kommandozeileprogramme: hcitool und sdptool. Der Befehl hcitool dev fragt zum Beispiel die Hardware-Adresse des eigenen Bluetooth-Gerätes ab. Diese Adresse (vergleichbar mit der MAC-Adresse einer Netzwerkkarte) ist für jedes Bluetooth-Gerät weltweit einmalig. Ihr Rechner benötigt diese unter Anderem dazu, um mit einem zweiten Gerät eine geschützte Verbindung aufzubauen.

hili@obelix:~> hcitool dev
Devices:
     hci0    00:10:C6:29:2E:15

Um nach anderen Bluetooth Geräten Ausschau zu halten, dient der Befehl hcitool scan. Er gibt die Adresse des gefundenen Gerätes und dessen Name zurück:

hili@obelix:~> hcitool scan
Scanning ...
     00:80:37:2A:AA:2E    K700i

Auf der Ebene des Service Discovery Protokolls arbeitet sdptool. Der Befehl sdptool browse sucht zum Beispiel nach Bluetooth-Geräten und fragt die dort verfügbaren Dienste ab. Diese Aufgabe lösen Sie jedoch mit den grafischen KDE-Bluetooth-Tools einfacher.

KDE-Bluetooth-Tools

Unter Suse Linux erscheint beim Anschließen eines Bluetooth-Adapters im Systemabschnitt der KDE-Kontrollleiste ein kleines Popup-Fenster (Abbildung 3). Es zeigt an, dass KDE den Bluetooth-Adapter erkannt hat. Gleich neben dem Hinweisfenster sehen Sie das Symbol der KDE-Bluetooth-Tools: es gleich dem offiziellen Bluetooth-Logo, zeigt aber anstelle des Buchstabens B ein K an.

Unter Mandrake Linux gehören die KDE-Bluetooth-Werkzeuge nicht zur Standard-Installation. Sie müssen deshalb zuerst über den Paket-Manager Rpmdrake das Paket kdebluetooth installieren. Nach einem Start der Tools über [Alt-F2] und die Eingabe von kbluetoothd sehen Sie das Programmsymbol im Systemabschnitt des Panels.

Abb. 3: Sind die KDE-Bluetooth-Tools aktiv, zeigt KDE beim Anschließen eines Bluetooth-Adapters ein kleines Hinweisfenster an.

Ein einfacher Mausklick auf das KDE-Bluetooth-Symbol startet den Datei-Manager Konqueror. Dieser hält über die Adresse bluetooth:/ nach weiteren drahtlosen Geräten Ausschau. Ihren eigenen Dongle zeigt der Datei-Manager dabei mit dem KDE-Bluetooth-Symbol und dem Namen localhost an. Andere Kommunikationspartner mit dem entsprechenden Gerätesymbol und -namen (Abbildung 4).

Abb. 4: Konqueror hat neben dem eigenen Bluetooth-Dongle ein Telefon gefunden, das auf den Namen K700i hört.

Klicken Sie ein Gerät an, prüft Konqueror über das Service Discovery Protokoll dessen Dienstleistungen. Die URL wechselt jetzt zu sdp:/ (Abbildung 5).

Abb. 5: Das Sony Ericsson K700i bietet zahlreiche Bluetooth-Dienste an. Konqueror unterstützt davon allerdings nur die ersten zwei direkt.

Um direkten Zugriff auf die Dateien des Mobiltelefons zu erlangen, klicken Sie das Symbol OBEX File Transfer an. Je nach Handy und Provider erhalten Sie so vollen Zugriff auf die Dateien des Mobiltelefons. Das K700i zeigt zum Beispiel die Ordner Andere, Bilder, Displayprofile, Töne und Videos an. Um eine MP3- oder Midi-Datei als Klingelton auf das Handy zu kopieren, öffnen Sie einfach ein zweites Konqueror-Fenster und ziehen die Dateien per Drag & Drop auf den Ordner Töne des Handys.

Objekte hochladen

Gestattet Ihr Handy über das OBEX-Protokoll nur das Lesen von Dateien oder bietet es überhaupt keine Unterstützung für Obex File Transfer, wählen Sie den Punkt OBEX Object Push. Konqueror startet dann das KDE-Programm kbtobexclient (Abbildung 6). Mit diesem laden Sie Dateien auf ein zweites Bluetooth-Gerät hoch. Dabei spielt es keine Rolle, ob es sich beim Kommunikationspartner um ein Mobiltelefon, einen Palmtop oder einen PC handelt. Sie können die Anwendung auch starten, indem Sie in Konqueror mit der rechten Maustaste auf eine Datei klicken und dann den Menüeintrag Aktionen / Send with Bluetooth wählen.

Das Programmfenster des Bluetooth OBEX Object Push client ist dreigeteilt. In der oberen Fensterhälfte befindet sich der Datei-Manager. Hier wählen Sie die Dateien aus, die Sie hochladen möchten. In der linken Fensterhälfte, unter Device selector sehen Sie, welche Bluetooth-Geräte kbtobexclient erkannt hat. Befindet sich das gewünschte Gerät nicht auf der Liste, klicken Sie auf Search, um eine neue Suche einzuleiten. Dies ist in der Regel nur dann nötig, wenn Sie das Programm gestartet haben, ohne vorher auf dem zweiten Gerät Bluetooth zu aktivieren.

Abb. 6: Mit diesem Programm laden Sie Dateien auf andere Bluetooth-Geräte hoch.

In der rechten Fensterhälfte stellen Sie die zu sendenden Dateien zusammen. Dazu ziehen Sie diese einfach aus dem Datei-Manager per Drag & Drop auf die leere Fläche. Ein Klick auf Send startet den Transfer. Je nach Einstellung und Gerät müssen Sie die Übertragung auf dem Handy zuerst noch gutheißen. Beim allerersten Datentransfer müssen Sie sich eventuell auch noch über die PIN-Abfrage autorisieren. Welche Dateitypen Sie auf ein Mobiltelefon hochladen können, hängt wiederum von dessen Spezifikationen ab. Manche erlauben es nur, Elemente hochzuladen, die das Telefon kennt (zum Beispiel Bilder und Klingeltöne). Andere wiederum erlauben auch das Hochladen von beliebigen Dateien wie OpenOffice-Dokumente oder Tar-Archiven. Findet der Datenaustausch zwischen zwei PCs statt, können Sie in der Regel jedes Dokument hochladen.

Die KDE-Bluetooth-Werkzeuge helfen auch, wenn Ihnen jemand eine Datei per Bluetooth senden möchte. Es erscheint dann auf dem Desktop ein Fenster, das Sie auf den Datentransfer hinweist (Abbildung 7). Klicken Sie hier auf Accept, nimmt Ihr PC die Datei an. Damit Sie den Datentransfer für Ihr eigenes Handy nicht jedesmal bestätigen müssen, wählen Sie hier unter Future policy for this device and service den Eintrag allow aus. Ihr Rechner akzeptiert dann sämtliche Daten von diesem Gerät und Sie müssen nur noch den Speicherort festlegen. Haben Sie ein Gerät fälschlicherweise in die Liste der erlaubten Geräte aufgenommen, können Sie dies im KDE-Kontrollzentrum unter Internet & Netzwerk / Bluetooth Services wieder rückgängig machen.

Abb. 7: Wie von Geisterhand: Über Bluetooth kann Ihnen jedes beliebige Gerät Dateien senden.

Ab ins Netz

Ein Bluetooth-Dongle lässt sich auch als Netzwerk-Gerät benutzen. Besitzen Sie zu Hause zwei Rechner und verfügen beide über eine Bluetooth-Schnittstelle, können Sie so eine direkte Netzwerkverbindung aufbauen. Die Vorgehensweise dazu ist nicht ganz trivial und verlangt etwas Arbeit auf der Kommandozeile. Mit folgender Anleitung sollte die Einrichtung aber kein Problem sein.

  1. Öffnen Sie auf Rechner A über [Alt-F2] und die Eingabe von kdesu konsole ein KDE-Terminal als root.
  1. Geben Sie im Terminal den Befehl pand -s -M ein. Dieser Rechner wartet nun auf Verbindungen von anderen Bluetooth-Rechnern. Auch Windows-Rechner können so mit Rechner A eine Bluetooth-Verbindung aufbauen.
  1. Starten Sie auf Rechner B ebenfalls ein Terminal-Fenster als root und ermitteln Sie mit dem Befehl hcitool scan die Bluetooth-Adresse von Rechner A.
  1. Geben Sie auf Rechner B den Befehl pand -c Bt-Adresse ein, wobei Sie Bt-Adresse mit der unter Punkt 3 ermittelten Hardware-Adresse ersetzen müssen.
  1. Überprüfen Sie die Verbindung mit Rechner A. Ist der Kontakt zu Stande gekommen, zeigt der Befehl pand -l das benutzte Netzwerk-Gerät, die Bluetooth-Adresse und den Verbindungstyp an, zum Beispiel
    hili@obelix:~> pand -l
    bnep0 00:04:61:81:5C:6B PANU

Der Eintrag bnep0 steht dabei für das Netzwerk-Interface. Diesem weisen Sie über den Befehl ifconfig eine IP-Adresse zu, zum Beispiel mit ifconfig bnep0 192.168.0.1 auf Rechner A und ifconfig bnep0 192.168.0.2 auf Rechner B. Testen Sie nun mit dem Befehl ping IP-Adresse, ob die zwei Rechner einander sehen. Auf Rechner A lautet der Befehl dazu

ping 192.168.0.2

auf Rechner B analog dazu ping 192.168.0.1. Unter Suse Linux müssen Sie für den erfolgreichen Ping-Versuch eventuell zuerst mit dem Befehl rcSuSEfirewall2 stop die Firewall ausschalten.

Um nach so viel Handarbeit wieder an die grafischen Oberfläche zu gelangen, starten Sie Konqueror und geben auf Rechner A die URL fish://192.168.0.2 ein. Nach Angabe des Logins und Passworts eines Benutzers von Rechner B, haben Sie nun vollen Zugriff auf das Dateisystem von Rechner B. (mhi)

Dieser Online-Artikel kann Links enthalten, die auf nicht mehr vorhandene Seiten verweisen. Wir ändern solche "broken links" nur in wenigen Ausnahmefällen. Der Online-Artikel soll möglichst unverändert der gedruckten Fassung entsprechen.

Druckerfreundliche Version | Feedback zu dieser Seite | Datenschutz | © 2018 COMPUTEC MEDIA GmbH | Last modified: 2007-04-05 11:10

Nutzungsbasierte Onlinewerbung

[Linux-Magazin] [LinuxUser] [Linux-Community] [Admin-Magazin] [Ubuntu User] [Smart Developer] [Linux Events] [Linux Magazine] [Ubuntu User] [Admin Magazine] [Smart Developer] [Linux Magazine Poland] [Linux Community Poland] [Linux Magazine Brasil] [Linux Magazine Spain] [Linux Technical Review]