Gpsd
gpsd ist der unter Linux für die Verarbeitung und Weitergabe von GPS-Daten zuständige Daemon. Er wird sowohl für Kismet als auch für GPSDrive benötigt, um die Accesspoints zuordnen zu können.
Inhaltsverzeichnis |
[Bearbeiten] Installation
[Bearbeiten] Ubuntu/Debian
sudo apt-get install gpsd gpsd-clients
[Bearbeiten] Gentoo
to-do
[Bearbeiten] Manuelle Instatllation
to-do
[Bearbeiten] Einrichtung
[Bearbeiten] USB-Empfänger
Die meisten GPS-Empfänger auf USB-Basis enthalten lediglich einen seriellen GPS-Empfänger und einen Konverter auf USB, was den Vorteil hat, dass ein zweites Kabel für die Stromversorgung entfällt. Es ist und bleibt jedoch ein serielles Gerät welches auch seriell angesprochen werden muss. Dazu muss unter Linux eine serielle Schnittstelle für das Gerät bereitgestellt werden. Viele Distributionen erledigen das heute bereits beim Einstecken des Geräts. Um das zu überprüfen, gibt man in einem Terminal
tail -f /var/log/syslog
ein und steckt dann erst den USB-Empfänger ein. Sollte sich nun in der Ausgabe etwas wie
kernel: [ 2113.485381] usb 3-2.7: new full speed USB device using ehci_hcd and address 7
kernel: [ 2118.573211] usb 3-2.7: configuration #1 chosen from 1 choice
kernel: [ 2118.573757] cdc_acm 3-2.7:1.0: ttyACM0: USB ACM device
finden lassen, haben wir Glück. Es bedeutet, dass der GPS-Empfänger nun unter /dev/ttyACM0 seriell ansprechbar ist, wobei der Name des Device variieren (z.B. auch ttyUSB0) kann.
to-do -> Nachmittag
[Bearbeiten] Bluetooth-Empfänger
lsusb
Mit "lsusb" sieht man ob der Bluetooth Dongle überhaupt erkannt wird.
hciconfig hciconfig hci0 up hcitool scan
Jetzt sollte man den Bt GPS Empfänger mit seiner MAC-Adresse (zB: 11:22:33:44:55:66..........BT-GPS-33:44:55) sehen.
hcitool cc 11:22:33:44:55:66 rfcomm bind /dev/rfcomm0 11:22:33:44:55:66 gpsd -N -n /dev/rfcomm0 &
So könnte man jetzt bei airodump-ng GPS aktivieren:
airodump-ng --gpsd ...
Zusammenfassung:
lsusb hciconfig hciconfig hci0 up hcitool scan hcitool cc <mac> rfcomm bind /dev/rfcomm0 <mac> gpsd -N -n /dev/rfcomm0 &
gestestet mit Backtrack 4 r2
[Bearbeiten] Backtrack 3
Um unter Backtrack 3 gpsd starten zu können muss folgender Befehl in die Konsole eingegben werden.
gpsd -n /dev/tts/USB0 -n...starte gpsd auch, wenn kein Programm nach gps koordinaten fragt
Sollte die USB-GPS-Maus nicht das einzige USB-Gerät sein, kann mit folgendem Befehl überprüft werden auf welchem USB-Port die Maus angschlossen ist.
dmesg
[Bearbeiten] GPS-Track aufzeichnen
Man kann mit GPSD zusätzlich (oder ausschließlich mit GPSD) die zurückgelegte Strecke in eine Datei aufzeichnen lassen.
Dies kann man dazu verwenden, um die entstandenen Daten später in einem NMEA-kompatibelen Programm weiterzuverarbeiten und draus z. B. eine KML-/KMZ-Datei für Google Earth zu erstellen.
Hierzu muss nach dem erfolgreichen Starten des GPSD folgender Befehl benutzt werden:
gpspipe -r > <pfad/zur/datei>
Das Programm gpspipe nimmt nun die NMEA-Daten von gpsd entgegen und schreibt diese in die Datei "<pfad/zur/datei>".
[Bearbeiten] Troubleshooting
Manche GPS Empfänger haben eine unsaubere Implementierung des NMEA Protokolls und vertragen es nicht wenn GPSD versucht Konfigurationsbefehle zu senden. Dies kann verhindert werden, in dem man in der Datei
/etc/default/gpsd
den Startparameter -b hinzufügt. Außerdem kann es oft hilfreich sein den Startparameter -n mit zu geben, der dafür sorgt, dass GPSD sofort beginnt die Daten vom Empfänger abzufragen und nicht erst auf einen Client wartet um damit zu beginnen. Um zu testen ob GPSD richtig funktioniert empfehlen sich die Tools gpsdump und xgps aus dem Paket gps-utils.