ubuntuusers.de

Synchronisation mit Windows Mobile

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

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.

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)

  • libnotify-bin (universe)

  • libopensync0 (universe)

  • opensync-plugin-synce (universe)

  • multisync-tools (universe)

Befehl zum Installieren der Pakete:

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

Oder mit apturl installieren, Link: apt://synce-sync-engine,libnotify-bin,libopensync0,opensync-plugin-synce,multisync-tools

Außerdem

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

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

Konfiguration

Einrichtung von OpenSync

Für die Einrichtung von OpenSync und der dazugehörigen Plugins siehe Archiv/OpenSync (Abschnitt „Wahl-und-Einrichtung-der-Plugins“).

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 Terminal[4] 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 Archiv/OpenSync (Abschnitt „Synchronisation“) 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 ⮷ 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

Diese 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.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
Ubuntu 9.10 Evolution Windows Mobile 6.5 Ja Ja Ja Ja ? Ja

Problemlösungen

Verbindungsprobleme

Falls das Windows-Mobile-Gerät 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.


Diese Revision wurde am 11. Februar 2020 09:07 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Büro, Hardware, Kommunikation