Wiki

Synchronisation mit Windows Mobile

Synchronisation mit Windows Mobile

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Die Verbreitung von Mobiltelefonen, die Windows Mobile als Betriebssystem einsetzen, nimmt immer mehr zu. Um effektiv arbeiten zu können, ist es wichtig, Termine, Aufgaben und Kontaktdaten auf dem mobilen Gerät synchron mit denen auf dem heimischen PC oder Laptop zu halten. In diesem Artikel wird beschrieben, wie die Daten zwischen einer Groupeware-Suite wie z.B. Evolution und einem Windows Mobile Gerät synchronisiert werden können. Für ältere Versionen von Windows Mobile bis Windows Mobile 2003 kann alternativ auch nach dem Artikel PocketPC vorgegangen werden.

Achtung!

Da es bei der Einrichtung zu Fehlern kommen kann, die einen Verlust der Kontaktdaten, Termine und Aufgaben zur Folge haben kann, wird dringend empfohlen, die Datei pim.vol vom Windows Mobile Gerät auf einen sicheren Datenträger zu sichern. Des Weiteren ist eine Sicherung der Daten von Evolution empfehlenswert.

Installation

Für die Synchronisation müssen folgende Pakete installiert [1] werden:

  • synce-sync-engine (universe)

  • synce-kpm (universe, für KDE)

  • synce-trayicon (universe, für GNOME)

  • libnotify-bin (universe)

  • libopensync0 (universe)

  • opensync-plugin-synce (universe)

  • multisync-tools (universe)

Paketliste zum Kopieren:

sudo apt-get install synce-sync-engine synce-trayicon synce-kpm libnotify-bin libopensync0 opensync-plugin-synce multisync-tools 

sudo aptitude install synce-sync-engine synce-trayicon synce-kpm libnotify-bin libopensync0 opensync-plugin-synce multisync-tools 

Unter Karmic muss man evtl. noch einen symbolischen Link anlegen:

ln -s /usr/bin/synce-sync-engine /usr/bin/sync-engine 

Konfiguration

Einrichtung von OpenSync

Für die Einrichtung von OpenSync und der dazugehörigen Plugins siehe OpenSync.

Welche Kombinationen bisher erfolgreich getestet wurden, kann man der Tabelle am Ende dieses Artikels entnehmen.

Einrichtung von Synce-KPM

Zunächst müssen synce-sync-engine und synce-kpm gestartet werden [2]. Nun verbindet man das Windows Mobile Gerät per USB mit dem Rechner. Synce-KPM sollte nun melden, dass ein neues Gerät gefunden wurde und noch keine aktive Partnerschaft besteht. Die Frage, ob eine neue Partnerschaft erstellt werden soll, bejaht man. Als Name für die Partnerschaft kann ein beliebiger Name gewählt werden (z.B. WinMobile). Darunter befindet sich eine Auswahl an Datensätzen (Sync Items), welche zur Synchronisation zur Verfügung stehen. Hier wählt man die Datensätze aus, welche man abgleichen will.

Eine Besonderheit von Synce-KPM ist, dass es automatisch erkennt, welche Datensätze zur Synchronisation zur Verfügung stehen und die restlichen ausgraut. Außerdem kann man mit Hilfe von Synce-KPM als .cab-Dateien bereitgestellte Software auf dem Windows Mobile Gerät installieren und deinstallieren.

Einrichtung von Synce-Trayicon (alternativ)

Nachdem man Synce-Trayicon gestartet [2] hat, erscheint im Systemabschnitt der Kontrollleiste ein neues Symbol. Nun verbindet man das Windows Mobile Gerät per USB mit dem Rechner. Ein Sprechblase sollte nun darüber informieren, dass ein neues Gerät gefunden wurde und das Symbol von Synce-Trayicon sollte "heller" werden. Mit einem Rechtsklick auf das Symbol von Synce-Trayicon öffnet man ein Kontextmenü, in dem es eine Zeile mit dem Namen des Windows Mobile Gerätes gibt. Mit einem Klick darauf öffnet sich ein weiteres Kontextmenü, in dem man nun "View device status" wählt. Im nun geöffneten Fenster wählt man den Reiter "Partners" und danach "Create", um eine neue Partnerschaft zu erstellen. Jetzt wählt man Name und Datensätze wie unter Einrichtung von Synce-KPM beschrieben aus.

Synchronisation

Hinweis:

Es gibt zwar Programme zum Synchronisieren, die eine grafische Oberfläche bieten, allerdings kommt es hierbei oft zu Fehlern. Daher wird an dieser Stelle auf ein Termial zurückgegriffen

Für den ersten Datenabgleich und die eigentliche Synchronisation ist sicherzustellen, dass synce-sync-engine und synce-kpm gestartet sind. Diese beiden Programme sind bei der Verwendung des Befehls msynctool immer notwendig.

Die Vorgehensweise für den ersten Datenabgleich und die Synchronisation ist im Wiki-Artikel OpenSync beschrieben.

Folgende Befehlszeilen sind beispielsweise notwendig, um eine Synchronisationsgruppe für Evolution und Synce einzurichten:

msynctool --listplugins
# hiermit lassen sich die verfügbaren Plugins anzeigen. Verfügbar sein
# sollten die Plugins evo2-sync und synce-opensync-plugin

msynctool --addgroup NAME
# NAME beliebig

msynctool --addmember NAME evo2-sync
msynctool --addmember NAME synce-opensync-plugin
# Plugins als "Gruppenmitglieder" hinzufügen

msynctool --showgroup NAME
# Erfolgskontrollle

Hinweis:

Ohne zuvor synce-sync-engine und synce-kpm zu starten, kann es bei der Synchronisation zu Fehlern kommen. Meistens werden die Log-Dateien von OpenSync überschrieben und eine Zuordnung der Zeitstempel ist nicht mehr möglich. Sollte dies einmal passieren, muss erneut eine einseitige Synchronisation durchgeführt werden.

Skript zur Synchronisation

Um die Synchronisation nicht immer in einem Terminal starten zu müssen, kann unten stehendes Skript {dl} verwendet werden. Dieses Skript prüft vor der Synchronisation, ob die notwendigen Programme laufen. Somit wird auch das Risiko, die Log-Dateien versehentlich zu überschreiben, minimiert.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#!/bin/bash

#Variablen definieren
GROUP=<Gruppe>		# Gruppenname eintragen
HIDE=0			# Zeit in Millisekunden, nach der die Sprechblasen ausgeblendet werden sollen (0 = nicht ausblenden)
OPENSYNC="~/.opensync-0.22/group1"

# Prüfen, ob notwendige Dienste laufen
AKTIV1a=`top -b -n1 | grep -i -c synce-sync`  # Name unter ???
AKTIV1b=`top -b -n1 | grep -i -c sync-engine` # Name unter Karmic
AKTIV2a=`top -b -n1 | grep -i -c synce-kpm`
AKTIV2b=`top -b -n1 | grep -i -c synce-trayicon`
if [ $AKTIV1a == "0" ]; then
  if [ $AKTIV1b == "0" ]; then
    notify-send -i /usr/share/icons/default.kde4/48x48/actions/dialog-close.png -t $HIDE "Fehler" "'Synce-Sync-Engine' läuft nicht. Synchronisierung wurde abgebrochen."
    exit   			#Auskommentieren, wenn der Dienst nur temporär gestartet werden soll
    #synce-sync-engine & 	#Auskommentieren, wenn der Dienst im Autostart steht
  fi
fi
if [ $AKTIV2a == "0" ]; then
  if [ $AKTIV2b == "0" ]; then
    notify-send -i /usr/share/icons/default.kde4/48x48/actions/dialog-close.png -t $HIDE "Fehler" "'Synce-kpm' oder 'Synce-Trayicon' muss gestartet werden. Synchronisierung wurde abgebrochen."
    exit   			#Auskommentieren, wenn der Dienst nur temporär gestartet werden soll
    #synce-kpm -i & 		#Auskommentieren, wenn der Dienst im Autostart steht
  fi
fi

#Datum der Dateien in Variable sichern
ALT=`date -r $OPENSYNC/change.db`
ALTLOG=`date $OPENSYNC/changelog.db`

#Meldung über Sync-Start ausgeben und Sync starten
notify-send -i /usr/share/icons/default.kde4/48x48/actions/view-refresh.png -t 3000 "Synchronisiere..." "Der Datenabgleich zwischen PC und PDA läuft..." &
msynctool --sync "$GROUP" --conflict n

#Datum der Dateien abrufen und in Variable speichern
NEU=`date -r $OPENSYNC/change.db`
NEULOG=`date $OPENSYNC/changelog.db`

#Daten vergleichen und Meldungen ausgeben
if [ "$NEU" = "$ALT" ] && ! [ "$NEULOG" = "$ALTLOG" ];then
  notify-send -i /usr/share/icons/default.kde4/48x48/actions/dialog-close.png -t $HIDE "Synchronisation abgeschlossen!" "Es gibt keine Änderungen zum Abgleichen "
elif [ "$NEU" = "$ALT" ] && [ "$NEULOG" = "$ALTLOG" ];then
  notify-send -i /usr/share/icons/default.kde4/48x48/devices/network-wired.png -t $HIDE "Fehler" "Der Datenabgleich konnte nicht durchgeführt werden. Prüfen sie die Verbindung zwischen den Geräten"
else
  notify-send -i /usr/share/icons/default.kde4/48x48/actions/dialog-ok-apply.png -t $HIDE "Synchronisation abgeschlossen!" "Der Datenabgleich wurde erfolgreich beendet"
fi

#Benötigte Dienste beenden, falls sie nicht im Autostart stehen
#pkill synce-kpm
#pkill synce-sync-engine

Zunächst muss in Zeile 4 der Gruppenname eingetragen werden und falls gewünscht wird, dass die Sprechblasen automatisch ausgeblendet werden, kann man in Zeile 5 noch eine Zeit in Millisekunden eintragen, nach der sich die Sprechblasen wieder schließen.

Das Skript wurde so erstellt, dass synce-sync-engine und synce-kpm bei der Anmeldung gestartet werden (Siehe hierzu Autostart). Daher gibt das Skript standardmäßig lediglich eine Fehlermeldung aus, wenn die notwendigen Programme nicht laufen. Falls man die Programme nicht ständig im Hintergrund laufen lassen will, kann man Zeile 15 und 22 mit einer Raute auskommentieren und die Zeilen 16, 24, 50 und 51 durch Entfernen der Raute aktivieren.

Vor dem Gebrauch muss das Skript außerdem ausführbar gemacht [3] werden.

Für das Skript kann man sich einen Starter anlegen, welcher das Skript ggf. in einem Terminal ausführt. Durch das Öffnen in einem Terminal kann man auch eventuelle Fehler ausfindig machen bzw. den Fortschritt verfolgen.

Erfolgreich getestet

Dies Liste soll erfolgreich getestete Soft- / Hardwarekombinationen zeigen. Die Tabelle darf (und soll auch) erweitert und ergänzt werden.

Ubuntu-Version PIM-Suite WinMobile Version Datensätze Device-Manager
Aufgaben Kalender Kontakte Files Synce-KPM Synce-Trayicon
Ubuntu 9.04 Evolution Windows Mobile 6.1 Ja Ja Ja ? Ja Ja
Ubuntu 8.10 Evolution Windows Mobile 6.1 Ja Ja Ja Ja Ja ?
Ubuntu 9.10 Evolution Windows Mobile 6.0 Ja Ja Ja Ja ? Ja
Ubuntu 9.10 Evolution Windows Mobile 6.1 Ja Ja Ja Ja Ja Ja

Problemlösungen

Verbindungsprobleme

Falls das Windows Mobile Geräte von synce-kpm bzw. synce-trayicon nicht erkannt wird, sollte auf dem mobilen Gerät folgende Einstellung vorgenommen werden:
Start -> Einstellungen -> USB zu PC -> Bei Erweiterte Netzwerkfunktionen aktivieren einen Haken setzen

Hinweis:

In diesem Menü kann der Verbindungsmodus auch auf "Festplatte" gestellt werden. Somit wird das mobile Gerät als Massenspeicher erkannt. Allerdings kann nur auf eine Speicherkarte zugegriffen werden.

Dateizugriff über Synce-Trayicon nicht möglich (Karmic)

In diesem Fall ist es notwendig, eine aktuelle Version von synce zu installieren. Das Paket synce-gnomevfs ist nicht mehr aktuell. Abhilfe schafft das Repository mit der APT-Befehlszeile

deb http://ppa.launchpad.net/synce/ppa/ubuntu karmic main

Anschließend Paketquellen aktualisieren und das Paket synce-gvfs anstelle von synce-gnomevfs installieren.

Diese Revision wurde am 13. Januar 2010 um 21:25 Uhr von 330e erstellt.
Dieser Seite wurden folgende Begriffe zugeordnet: Büro, Hardware, Kommunikation

Passwort vergessen?