Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !



Comment synchroniser Ubuntu avec les PDA et smartphones sous Windows™ Mobile 5/6 ? (mode synchronisation RNDIS)

La synchronisation est désormais possible avec les PDA/Smartphones sous Windows mobile 5/6.

L'ancien mode de synchronisation série USB est documenté sur la page Comment connecter un PDA sous Windows Mobile 5 en USB.
Ce sujet évoluant rapidement, les indications de cette page peuvent être rapidement dépassées. N'hésitez pas à vous reporter aux liens à la fin de cette page.
  • La communication avec le pda se fait avec SynCE. Il existe 2 implémentations de dcmm permettant de se connecter pour le système RNDIS : odccm (obsolète) ou synce-hal qui devrait faire tout ce que fait odccm, mais d'une façon plus simple et plus propre.
  • La synchronisation se fait avec la librairie d'exécution OpenSync qui nécessite une interface utilisateur pour la configurer : en ligne de commande (Msynctool) ou avec une interface graphique.
  • La navigation dans les fichiers de l'appareil mobile est possible sous gnome avec synce-gvfs.

Pré-requis

SynCE utilise le mode de synchronisation RNDIS d'ActiveSync. Le périphérique doit être réglé pour utiliser ce mode sinon ça ne marchera pas :

  • Sous WM5 : C'est normalement déjà en RNDIS. Sinon naviguer dans Démarrer → Paramètres → Connexions → Mode ActiveSynce et choisir "Mode sync RNDIS".
  • Sous WM6 : C'est normalement déjà en RNDIS. Il n'y a donc rien à faire. Sous Démarrer → Paramètres → Connexions → Paramètres USB : choisir Activesync.

Installation sous Intrepid

Contrairement à Hardy, les dépôts pour Intrepid contiennent déjà tous les paquets nécessaires.

Des dépôts contenant les dernières versions sont disponible à cette adresse :

deb http://ppa.launchpad.net/synce/ubuntu intrepid main
deb-src http://ppa.launchpad.net/synce/ubuntu intrepid main 

Pour importer la clé :

gpg --keyserver keyserver.ubuntu.com --recv-key D246C25D && gpg --armor --export D246C25D | sudo apt-key add - 

Installez les paquets suivant :

Pour SynCE
  • synce-trayicon : permet de surveiller quand le périphérique Windows CE est connecté, de gérer les partenariats, les programmes installé, l'état du périphérique et de choisir entre synce-hal et odccm.

Il faut ajouter le programme synce-trayicon au démarrage de la session Gnome (Système>Préférences>Sessions) sauf si vous utilisez la dernière version des dépôts ppa qui se lance automatiquement au démarrage.

Pour OpenSync
Pour l'interface utilisateur de Opensync
  • multisync0.90 : interface graphique, pour gnome (Applications>Accessoires>Multisync-gui)

ou

msynctool [options]
Pour la navigation dans les fichiers du PDA

Il faut ouvrir les ports locaux dans le pare-feu si nécessaire

sudo ufw allow from 169.254.2.0/24 to any

Installation sous Hardy

Il faut pour cela ajouter de nouveaux dépôts PPA contenant l'outil nécessaire.

Ajout de nouveaux dépôts (Hardy)

Ajouter les dépôts suivants à vos sources de mises à jour et recharger la liste des logiciels :

deb http://ppa.launchpad.net/synce/ubuntu hardy main
deb-src http://ppa.launchpad.net/synce/ubuntu hardy main
A ce jour, les paquets stockés sur ppa.launchpad.net ne semblent pas signés.

Comme il manque les clés de signature de ces dépôts, pendant l'installation un message d'avertissement vous informe que les paquets ne sont pas signés.

Procédez ensuite suivant votre souhait de sécurisation de votre système. 1)

Ajout et compilation de rndis (noyau Linux < 2.6.24-19)
Les manipulation de cette partie ne sont nécessaire que si la version de votre noyau Linux est antérieure à la 2.6.24-19.

Votre version en cours est vérifiable par la commande :

 uname -a 

On va chercher et compiler le nouveau pilote rndis. Tout d'abord bien décharger tous les modules chargés par défaut dans le noyau :

sudo rmmod rndis_host cdc_ether usbnet

Ensuite, suppression des anciens pilotes pour que le noyau ne les recharge pas au prochain amorçage :

sudo rm /lib/modules/`uname -r`/kernel/drivers/net/usb/{rndis_host,cdc_ether,usbnet}.ko

Compilation des nouveaux pilotes :

sudo apt-get install usb-rndis-source cdbs
sudo module-assistant auto-install usb-rndis
Bibliothèques nécessaires à la communication d'Ubuntu et du PDA/smartphone

On récupère les bibliothèques nécessaires en installant les paquets odccm librra0-tools librapi2-tools.

FIXME Le paquet odccm est désinstallé automatiquement lors de l'installation de synce-hal
NOTE 1.4: Si vous utilisez par "malheur" un gestionnaire de connexion tel que network-manager ou WICD il se peut que vous perdiez votre/vos connexion(s) a(ux) reseau(x). Pour remédier a cela il suffit d'identifier quelle est l'interface utilise par synce pour communiquer avec le pda/smartphone.
Tapez dans un terminal :
/sbin/ifconfig -a | grep 80:00:60:0f:e8:00  | cut -d " " -f 1

le résultat de la commande vous renvoie directement l'interface réseau concernée. Il suffit alors d'ouvrir le fichier /etc/network/interfaces et d'ajouter les lignes suivantes :

iface <interface du pda> inet dhcp

(en ayant au préalable remplacé "<interface du pda>" par le résultat de la commande ci dessus et de sauvegarder le fichier.

Afin de redistribuer convenablement les adresses IP des différentes connexions, il est nécessaire de redémarrer manuellement le réseau :

sudo /etc/init.d/networking restart

On va dès à présent ajouter les logiciels et bibliothèques nécessaires à la synchronisation : installez les paquets

  • Pour Gnome:

multisync-tools opensync-plugin-evolution opensync-plugin-synce libgnomevfs2-dev libsynce0-dev librapi2-dev.

  • Pour KDE (on remplace le plugin evolution par opensync-plugin-kdepim

multisync-tools opensync-plugin-kdepim opensync-plugin-synce .

Branchez votre joli PDA/smartphone et taper un petit :

synce-pls

dans un terminal. Le résultat de la commande doit retourner la liste des fichiers présents dans le répertoire « Mes Documents » de l'appareil mobile.

La gestion de la synchronisation peut se faire par des interfaces graphiques. Choisissez en une qui correspond à votre environnement de bureau.

Si vous avez un décalage horaire (décalage entre l'heure locale et l'heure UTC) entre un événement créé sur le PDA et l'évenement synchronisé sur votre ordinateur, la solution consiste à mettre la variable "AppendDefaultTimezone" à 1 dans le fichier ~/.synce/config.xml.

Synchronisation pour GNOME

ActiveSync demande de créer des partenariats avant de pouvoir synchroniser deux éléments. Il y a une limite de deux partenariats pour windows mobile.

Les partenariats

Les partenariats peuvent être configurés en ligne de commande ou graphiquement.

Méthode graphique :

Cliquez droit sur synce-trayicon, sélectionnez le PDA et cliquez sur "View device status". Une fenêtre s'ouvre, choisissez l'onglet "Partners". Cliquez sur "Create". Entrez un nom de partenariat et sélectionnez tous les items que vous désirez synchroniser notamment "Calendar", "Contacts" et "Tasks". Cliquez sur valider. Pour le supprimer : "remove".

Méthode en ligne de commande :
synce-create-partnership "<nom_du_partenariat>" "<éléments_à_synchroniser"

Les éléments que l'ont peut synchroniser sont à choisir parmi la liste suivante : Contacts,Calendar,Tasks,Files. Ils doivent être séparés par un virgule dans la commande précédente.

Pour supprimer un partenariat :

synce-delete-partnership

Utilisation

Une fois le partenariat établi, il faut créer un groupe et choisir les éléments à synchroniser.

Méthode graphique :

Lancez Multisync-gui dans Application>Accessoire puis ajouter un groupe. Allez dans modifier puis "Add Member" : choisissez deux éléments : synce-opensync-plugin dans tous les cas et le plugin correspondant à votre client mail (ex : evo2-sync pour évolution si vous avez installé opensync-plugin-evolution). Ensuite utilisez le bouton Actualiser pour lancer la synchronisation.

Méthode en ligne de commande :

Avec multisync-tools

D'abord, il faut lister les plugins disponibles. la commande suivante :

msynctool --listplugins

..devrait vous donner un résultat qui ressemble à ça :

Available plugins:
synce-opensync-plugin
evo2-sync

Si vous utilisez utilisez le gestionnaire de mail de Kde, vous aurez kdepim-sync à la place de evo2-sync.

Il faut ensuite créer un groupe de connexion :

msynctool --addgroup <nom du groupe>

et y ajouter les 2 plugins :

msynctool --addmember <nom du groupe> synce-opensync-plugin
msynctool --addmember <nom du groupe> evo2-sync

(Bien sur, là encore remplacez evo2-sync par kdepim-sync si vous êtes sous KDE).

Et voilà. Pour lancer la synchro,

  1. Commencez par vous assurer que la mémoire tampon de votre terminal est suffisante car cette commande trace énormément;
  2. Fermez votre gestionnaire de contacts/ calendrier pour éviter les verrouillages éventuels.
  3. puis lancez :
msynctool --sync <nom du groupe>

Soyez patient, ça prend un peu de temps.

Au cours de la synchro, si des entrées en conflit existent entre le Pda et votre ordinateur, la console vous présentera les entrées en conflit (dans un format XML assez difficile à lire) et vous demandera laquelle choisir :

Overwriting conflict
Conflict for Mapping 0xb234e3c0: 
Entry 1:
UID: pas-id-48FB3D4B0000001F
<?xml version="1.0"?>
<contact>
  <Revision>
    <Content>20081019T135939Z</Content>
  </Revision>
  <Uid>
    <Content>pas-id-48FB3D4B0000001F</Content>
  </Uid>
  <FileAs>
    <Content>XXXXX</Content>
  </FileAs>
  ...
</contact>

Entry 2:
UID: pas-id-CD512BC3D421FBAD
<?xml version="1.0" encoding="utf-8"?>
<contact xmlns:AS="http://synce.org/formats/airsync_wm5/airsync">
  <FileAs>
    <Content>XXXXX</Content>
  </FileAs>
  ...
</contact>


Which entry do you want to use? [1-9] To select a side, [D]uplicate, Keep [N]ewer:
  • Tapez un chiffre pour choisir une des ressources en conflit (n choisit l'"Entry n");
  • D pour dupliquer les 2 entrées sur le PDA et le PC;
  • N pour ne garder que la plus récente.

Il n'existe malheureusement pas d'option de fusion des entrées en conflit.

Synchronisation pour KDE : SynCE-KPM

Installation

installez le paquet synce-kpm.

Synchro

Dans une console tapez:

synce-kpm

Une fenêtre aux fonctionnalités de ActiveSync apparaît. Vous pouvez choisir les éléments à synchroniser et lancer l'installation de programme (fichier .cab)

Voila vous avez terminé, le dossier "Mes Documents" de votre pda/smartphone est maintenant synchronisé avec le dossier "PDAFiles" de votre home.

NOTE 1.5 : pour ceux qui avait un soucis avec la note 3 le problème devrait être résolu. Vous pouvez verifier en lançant synce-kpm (voir ci-dessous).
Synce-kpm : avec synce-kpm vous pouvez dès à présent installer/désinstaller des logiciels (onglet Software Manager) voir l'état de votre périphérique (état batterie, propriétaire, utilisation d'espace disque….) et générer des partenariats à la manière d'ActiveSync.
Ceci ne fonctionne que dans l'environnement GNOME. Synce peut être interfacé avec le système de fichier GVFS pour être utilisé de manière transparente par les applications GNOME.

Installation

Ajouter les dépôts suivants à vos sources de mises à jour et recharger la liste des logiciels :

deb http://ppa.launchpad.net/synce/ubuntu intrepid main
Remplacez intrepid par hardy si vous utilisez hardy)

Installer ensuite le paquet synce-gvfs.

Utilisation

Il ne vous reste plus qu'à parcourir le périphérique. Si vous avec installé le paquet synce-trayicon et lancé l'application, faite un clic droit sur l'icône de la barre des tâches, puis sélectionner le PDA puis parcourir le périphérique.

La méthode suivante ne fonctionne que sur Hardy avec Nautilus. Un paquet synce-gvfs sera disponible plus tard pour Intrepid.

Modification des dépôts

Voici la partie la plus compliquée…

Tout d'abord vous il faut vous assurer que vous avez bien dans votre fichier /etc/apt/source les dépôts "sources" (c'est à dire les dépôts commencant par deb-src)

Si ce n'est pas le cas vous référer à la documentation générale des dépots d'ubuntu-fr.org

Une fois ceci vérifié, il vous suffit d'ouvrir le fichier /etc/apt/sources.list

sudo nano /etc/apt/sources.list

et d'y ajouter la ligne suivante :

deb-src http://www.mpellis.org.uk/debian/ unstable main

Ajout de la clé de confiance :

Une petite mise à jour de la liste des logiciels après l'ajout de la nouvelle clé de confiance nécessaire:

gpg --keyserver pgpkeys.mit.edu --recv-key EEA242F0
gpg -a --export EEA242F0 | sudo apt-key add -
sudo apt-get update

Téléchargement de gvfs

Ensuite il reste a passer aux choses sérieuses, le téléchargement de gvfs :

apt-get source gvfs
cd gvfs-0.2.5
./configure
make

Installation des dépendances :

Puis il est nécessaire d'installer les dépendances pour la compilation de gvfs :

sudo apt-get install libgvfscommon-dev gvfs-bin gvfs-backends dpkg-dev fakeroot cdbs librra-dev

Et enfin télécharger les sources de synce-gvfs :

apt-get source synce-gvfs
NOTE 2.1 : IL NE FAUT ABSOLUMENT PAS INSTALLER synce-gvf DES DEPOTS (avec un
sudo apt-get install synce-gvf

) CELUI CI NE MARCHERA EN AUCUN CAS!!!

Dans le nouveau répertoire synce-gvfs créé, il faut éditer le fichier rules dans le répertoire debian et changer /home/mark/sources/synce/gvfs/gvfs-0.2.5 par le répertoire absolu ou se trouve les sources de gvfs (mis en place tout à l'heure si si promis!!) ce qui donne : /le/chemin/absolu/jusqua/gvfs-0.2.5 (à adapter en fonction des numéros de versions…). Dans mon cas j'ai la ligne :

DEB_CONFIGURE_EXTRA_FLAGS += --with-gvfs-source=/home/aymeric/gvfs-0.2.5

.

Installation des packages :

Une fois ceci effectué (promis c'est bientôt fini…) il faut se placer dans le répertoire de synce-gvfs (dans mon cas : /home/aymeric/synce-gvfs-0.1.svn20080423) et faire un joli :

sudo dpkg-buildpackage -rfakeroot

.

S'il n'y a pas de problème de compilation(promis devrait pas trop y en avoir), il suffit de finir tout ca par l'installation du .deb fraichement créé :

sudo dpkg -i ../synce-gvfs_0.1.svn20080423-1_i386.deb

, de redémarrer le pc et tout devrai être effectif au reboot.

Accès au système de fichiers du PDA/Smartphone :

Après le reboot, il suffit de taper dans la barre d'adresse de nautilus (et bien sûr d'avoir son PDA/Smartphone connecté au PC via son câble USB)

synce:///

et voila les jolis dossiers et fichiers de votre appareil mobile favoris.

NOTE 2.2 : pour les plus observateurs, ils auront aussi remarqué qu'une icône "Mobile Device" s'est créée sur le bureau et l'appareil est désormais accessible par simple clic.
Pour ceux qui veulent copier des gros fichiers sur la carte mémoire leur PDA, il reste néanmoins un gros soucis… Les fichiers ne sont pas directement copiés sur la carte mais sur la racine du PDA… Donc en gros s'il vous reste 30mo de libre sur votre partition systeme du PDA, vous ne pourrez pas copier de fichier de plus de 30mo sur votre carte mémoire…
Pour la connexion, si la liaison ne se fait pas et que vous utilisez un pare-feu, essayer en le désactivant: il est fréquent que le pare-feu bloque cette connexion, si elle n'a pas été explicitement autorisée.

En espérant avoir été clair et que ce petit tuto aidera moulte personnes :-)

—-

Contributeurs : tekman54000, fnx, Id2ndR.


1)
Pour info, les clés de Jonny Lamb (C18AFB9F2E039402) et Matthias Jahn (CB210090B029CB84) ne conviennent pas
  • tutoriel/sync_wm5-6.1239832305.txt.gz
  • Dernière modification: Le 18/04/2011, 14:51
  • (modification externe)