Documentation d'Echosync
Démarrer avec Echosync
Quelles sont les limites et contraintes d’Echosync ?
Echosync est affecté des limites et contraintes suivantes :
- Echosync nécessite les droits administrateurs pour synchroniser les fichiers verrouillés par un autre processus (VSS). Certaines fonctionnalités peuvent être désactivées si Echosync est démarré sans les droits administrateur.
- Echosync est un logiciel de synchronisation orienté « dossiers » et non « fichiers » ou « bibliothèque ». Le niveau de granularité étant le répertoire (la racine d’un volume incluse), il n’est pas possible d’exclure de la synchronisation certains fichiers contenus dans un dossier source.
- Echosync ne conserve pas plusieurs versions du même fichier. Il n’est donc pas possible de « remonter dans le temps » en récupérant une version antérieure à la dernière synchronisation. Il est en revanche possible de créer plusieurs profils ciblant le même dossier source et de les synchroniser alternativement.
- Echosync est un logiciel de synchronisation unidirectionnel, c’est-à-dire que les modifications vont toujours de la source (qui peut être en lecture seule) vers la destination. Si ce mode de fonctionnement a le mérite de la simplicité, il peut ne pas répondre à tous les besoins. Une alternative est de créer deux profils en inversant la source et la destination.
En quelles langues Echosync est-il disponible ?
Echosync est disponible en français, anglais, italien, espagnol, allemand, chinois, néerlandais et russe. Par défaut, Echosync démarre dans la langue de Windows si celle-ci est disponible, et en anglais dans le cas contraire.
La langue utilisée peut être changée à tout moment dans le menu Options d’Echosync. Echocli tient également compte de ce paramètre pour son affichage.
Les candidats souhaitant aider à la traduction d’Echosync sont invités à prendre contact avec le support technique. Ainsi, c’est grâce à ses utilisateurs bénévoles qu’Echosync est également disponible en italien, espagnol, allemand, chinois, néerlandais et russe.
Quelle différence entre Echosync.exe et Echocli.exe ?
Echosync dispose d’une interface graphique pour plus d’accessibilité et de simplicité pour l’utilisateur.
Echocli est un programme en ligne de commande. Il est recommandé de l’utiliser avec un interpréteur de ligne de commande moderne supportant les caractères Unicode comme le Terminal Windows.
Comment utiliser et mettre à jour la version portable d’Echosync ?
Pour utiliser Echosync en mode portable, il suffit de dézipper l’archive d’Echosync à l’endroit de votre choix (comme une clef USB), en évitant de choisir un dossier qui nécessite des privilèges administrateurs pour pouvoir y écrire (comme le dossier Program Files).
Echosync est livré avec un script PowerShell de mise à jour automatique. Lors de la mise à jour, l’ancien dossier est renommé. Vous pouvez le supprimer sans crainte après vous être assuré que la nouvelle version est pleinement fonctionnelle.
Mon logiciel de sécurité m’indique qu’Echosync pourrait être dangereux. Que dois-je faire ?
Windows SmartScreen et de nombreux logiciels antivirus considèrent comme suspect les fichiers dont la réputation et la sûreté, dépendant du nombre de téléchargement du fichier en question, n’est pas encore établie. Ce qui est le cas, par définition, pour tout fichier nouvellement sorti. Le comportement très contestable de Windows SmartScreen (qui n’est pas aussi smart que son nom indique) est connu et semble assumé par Microsoft lui-même. Par conséquent, à chaque mise à jour d’Echosync, et durant quelques jours, des alertes plutôt anxiogènes pourront être affichées à l’installation :
Pour les antivirus les plus zélés du marché, la période de défiance peut même durer plusieurs mois, le temps que l’éditeur soit informé du faux positif.
Si Echosync a été téléchargé depuis une source fiable telle que le présent site ou via la commande winget install SylvainRougeaux.Echosync
, cette alerte peut être ignorée sans crainte. Les plus méfiants ou inquiets pourront tester le fichier d’installation d’Echosync sur VirusTotal, qui utilise plus de 70 moteurs d’antivirus différents.
Pour Windows SmartScreen, le bouton Exécuter quand même permettra d’installer Echosync. Quant aux antivirus, ils disposent tous d’option pour autoriser l’exécution d’un logiciel considéré comme sûr par l’utilisateur.
Une solution pérenne serait de signer électroniquement les binaires d’Echosync avec un certificat électronique de signature de code, mais ces derniers sont particulièrement onéreux et à renouveler périodiquement. Les augmentations de tarifs de ces certificats (x4 en 2023) ont eu raison de la bonne volonté du développeur bénévole d’Echosync.
Quels sont les paramètres avancés disponibles ?
Certains paramètres avancés d’Echosync ou d’Echocli ne peuvent pas être modifiés avec leur interface utilisateur. Ces paramètres sont enregistrés dans des fichiers JSON stockés dans le répertoire Profiles. Ils sont à modifier avec un éditeur de texte (ex. : Bloc-notes ou Visual Studio Code). Ne les modifiez que si vous savez ce que vous faites.
Les paramètres avancés suivants, communs à Echosync et Echocli, sont disponibles dans le fichier AdvancedSettings.json :
- DisableCrashReporting :
true
pour désactiver l’envoi automatique de rapport de plantage d’Echosync ou d’Echocli, sinonfalse
(valeur par défaut :false
) ; - DisableTelemetry :
true
pour désactiver l’envoi automatique du numéro de version d’Echosync, et de la version et langue de Windows, au démarrage d’Echosync ou d’Echocli, sinonfalse
(valeur par défaut :false
) ; - IgnoreSystemFiles :
true
si les fichiers ayant l’attribut système doivent être ignorés lors des opérations de comparaison et de synchronisation, sinonfalse
(valeur par défaut :true
).
Le paramètre avancé suivant, spécifique à Echosync, est disponible dans le fichier GuiSettings.json :
- CheckUpdatesOnStartup :
true
pour vérifier automatiquement au démarrage d’Echosync la disponibilité d’une nouvelle version, sinonfalse
(valeur par défaut :true
).
Après avoir modifié les paramètres voulus dans les fichiers JSON, il suffit de les enregistrer. La prise en compte des modifications dans Echosync est immédiate.
Peut-on personnaliser l’apparence d’Echosync ?
Echosync offre de nombreux thèmes graphiques pour s’adapter au goût de chaque utilisateur. Les thèmes peuvent être choisis depuis le menu Options. Il est possible de faire défiler les thèmes à l’aide du raccourci clavier Alt + Gauche ou Alt + Droite, et de voir immédiatement le résultat.
Les profils de synchronisation
Comment créer un profil de synchronisation ?
Avec l’interface graphique
L’utilisateur peut créer un nouveau profil de synchronisation après avoir renseigné les champs de la fenêtre Créer un nouveau profil de synchronisation, que l’utilisateur peut ouvrir en cliquant sur le lien Nouveau… en haut à droite du logiciel.
Echosync affiche la liste des profils chargés, avec pour chacun d’eux, leur nom, leur répertoire source et destination, la date de leur dernière synchronisation, leur statut et une description libre donnée par l’utilisateur. Le nom et la description du profil peuvent à tout moment être modifiés.
Les modes de synchronisation désirés peuvent être définis directement sous le nom du profil :
- Copie dans le dossier de destination les fichiers et répertoires nouveaux dans le dossier source ;
- Supprime dans le dossier de destination les fichiers et répertoires supprimés dans le dossier source ;
- Ecrase dans le dossier de destination les fichiers modifiés dans le dossier source, s’ils sont plus récents que ceux déjà présents dans le dossier de destination ;
- Ecrase dans le dossier de destination les fichiers modifiés dans le dossier source, même s’ils sont plus anciens que déjà ceux présents dans le dossier de destination ;
- Renomme ou déplace dans le dossier de destination les fichiers et répertoires renommés ou déplacés dans le dossier source.
En ligne de commande
Un profil de synchronisation peut être créé en ligne de commande à l’aide de la commande create
d’Echocli, en lui passant en paramètres les options désirées.
Par exemple : echocli create "Projet X" C:\source D:\destination
. Si aucune option n’est passée en paramètre, comme dans cet exemple, c’est l’option --safe
qui est retenue par défaut.
Dans l’exemple echocli create "Super Projet" C:\source D:\destination --mirror --description "Mirroir de SP sur la clef USB"
, un profil de synchronisation nommé « Super Projet » est créé avec la description spécifiée, en activant toutes les options de synchronisation pour que le dossier de destination soit le miroir du dossier source.
Il est possible de créer un profil de synchronisation en mode interactif en utilisant la commande create
sans argument ni option. Il suffira alors de se laisser guider en répondant aux questions qui sont posées.
Les profils de synchronisation disponibles sont consultables en utilisant la commande list
.
Par exemple, pour afficher tous les profils de synchronisation dont le nom commence par « mon », il suffit de saisir echocli list mon*
.
Le caractère générique « * » étant la valeur par défaut, la commande echocli list
affiche tous les profils de synchronisation disponibles.
Une fois créé, un profil de synchronisation peut être modifié à l’aide de la commande configure
.
La commande echocli configure test --name "nouveau nom" --safe
permet, par exemple, de modifier le nom du profil « test » en « nouveau nom » et d’activer les modes de synchronisation qui ne risquent pas de provoquer une perte de données dans la destination.
Où sont enregistrés les profils de synchronisation ?
Les profils de synchronisation sont stockés dans un fichier XML portant le nom de la machine qui l’a créé avec une extension XBP (XML Backup Profiles). Ce fichier est stocké dans le sous-répertoire Profiles
de l’application (en mode portable) ou dans le dossier %LOCALAPPDATA%\Echosync\Profiles
(si Echosync est installé sur la machine).
Les profils de synchronisation sont associés au nom de la machine qui les a créés. En clair, seuls les profils correspondant à la machine qui exécute le logiciel sont affichés. Echosync pouvant être utilisé en mode portable (ex. : exécuté directement depuis le support de destination lui-même), il convenait de gérer le cas de profils créés sur des PC distincts.
Comment supprimer les profils de synchronisation ?
Avec l’interface graphique
Les profils sélectionnés (Ctrl+clic pour une sélection multiple non contiguë, et Maj+clic pour la sélection d’un intervalle) peuvent être supprimés en cliquant sur le lien Supprimer.
Supprimer un profil de synchronisation n’entraîne la suppression d’aucun fichier.
En ligne de commande
Les profils de synchronisation peuvent être supprimés avec la commande remove
d’Echocli, en passant leur nom en paramètres, étant précisé que les caractères génériques sont correctement interprétés.
Par exemple, pour supprimer le profil « Mon profil » :
Comment exclure certains sous-dossiers du dossier source de la synchronisation ?
Il est possible d’exclure certains sous-dossiers contenus dans le dossier source de la synchronisation. Pour ce faire, il convient d’éditer le fichier XML dans lequel sont enregistrés les profils. Vous pourrez alors ajouter chaque sous-dossier à ignorer lors de la synchronisation en l’ajoutant dans la balise XML SourceFoldersExclusion du profil correspondant, de la façon suivante :
Comment synchroniser depuis ou vers un dossier d’un smartphone ?
En connectant le smartphone en mode UMS
La solution la plus simple pour accéder à la mémoire (interne ou carte mémoire) d’un smartphone est de la « monter » sur l’ordinateur en mode UMS (USB mass storage device class). Ainsi, l’accès à la mémoire du smartphone s’effectue de la même façon que n’importe quel lecteur (ex. une clef USB), que ce soit avec l’explorateur de fichiers de Windows ou Echosync.
Malheureusement, le mode UMS est de moins en moins disponible sur les smartphones récents, au profit du seul mode MTP (Media Transfer Protocol) beaucoup plus limité : accès aux fichiers médias uniquement, pas de point de montage pour un accès universel et standard, etc. Il va donc falloir ruser pour accéder plus librement aux fichiers du smartphone.
En utisant l’application mobile Lien avec Windows
Microsoft a intégré dans Windows 11 une fonctionnalité permettant d’accéder de façon transparente aux dossiers et fichiers d’un smartphone depuis l’explorateur de fichiers. Pour activer cette fonctionnalité, accédez à Paramètres, Bluetooth et appareils, Appareils mobiles et Gérer des périphériques. Une option permettra de rendre les fichiers du smartphone visibles dans l’explorateur de fichiers et donc dans Echosync.
En utilisant un serveur WebDAV sur le smartphone
Enfin, il est possible d’utiliser le protocole WebDAV pour accéder aux fichiers du smartphone. Cela nécessite de connecter le smartphone sur le même réseau que l’ordinateur exécutant Echosync. Le smartphone doit donc être connecté en Wifi à votre réseau local. Ensuite, il faut utiliser un serveur WebDAV sur le smartphone. On en trouve plusieurs sur les magasins d’application mobile.Une fois le serveur WebDAV opérationnel, veuillez noter l’adresse du serveur de fichiers. Prenons l’exemple d’un serveur disponible à l’adresse http://192.168.1.18:8080
. Pour accéder à ce serveur de fichiers depuis une application Windows, réécrivez l’adresse URL sous la forme \\[ADRESSE_IP]@[PORT]\DavWWWRoot
, soit en l’espèce \\192.168.1.18@8080\DavWWWRoot
. Il suffit de compléter le chemin du nom des dossiers et sous-dossiers composant l’arborescence visée, par exemple, \\192.168.1.18@8080\DavWWWRoot\DCIM\Camera
pour accéder aux fichiers et sous-dossiers contenus dans le dossier DCIM\Camera
. Le chemin complet pourra être utilisé dans l’explorateur de fichiers de Windows ou Echosync, en tant que dossier source ou destination.
La comparaison et la synchronisation des dossiers
Comment lancer une opération de comparaison ou de synchronisation ?
Avec l’interface graphique
Les boutons Comparer et Synchroniser permettent de lancer la comparaison, puis le cas échéant la synchronisation, du répertoire source avec le répertoire de destination des profils sélectionnés.
Les boutons Pause et Annuler permettent respectivement de mettre en pause ou d’interrompre l’opération en cours.
Le résultat de la comparaison est immédiatement présenté à l’utilisateur, par la représentation d’une vue future du répertoire de destination.
Les commandes compare
et sync
d’Echocli permettent respectivement de lancer la comparaison et la synchronisation du répertoire source avec le répertoire de destination des profils de synchronisation dont les noms sont passés en paramètre, étant précisé que les caractères génériques peuvent être utilisés.
Il est possible d’interrompre l’opération en cours en envoyant le signal SIGINT par la combinaison de touche Ctrl+C. Les opérations en cours sont alors annulées proprement.
Le résultat de la comparaison est immédiatement présenté à l’utilisateur, par la représentation d’une vue future du répertoire de destination dans la console.
Quel type de différence Echosync détecte-t-il ?
Echosync procède par comparaison, en détectant les différences relatives aux :
- Copie dans le dossier de destination les fichiers et répertoires nouveaux dans le dossier source. Ces fichiers et dossiers introuvables dans la destination, mais présents dans la source, seront copiés dans la destination.
- Supprime dans le dossier de destination les fichiers et répertoires supprimés dans le dossier source. Ces fichiers et répertoires introuvables dans la source, mais encore présents dans la destination, seront supprimés dans la destination. Attention, cette opération peut aboutir à une perte de données.
- Ecrase dans le dossier de destination les fichiers modifiés dans le dossier source, s’ils sont plus récents que ceux déjà présents dans le dossier de destination. Ces fichiers présents dans la source et dans la destination, mais dont la date de modification des fichiers présents dans la source est plus récente que celle des fichiers dans la destination, seront écrasés dans la destination.
- Ecrase dans le dossier de destination les fichiers modifiés dans le dossier source, même s’ils sont plus anciens que déjà ceux présents dans le dossier de destination. Ces fichiers présents dans la source et dans la destination, mais dont la date de modification des fichiers présents dans la source est plus ancienne que celle des fichiers dans la destination, seront écrasés dans la destination. Attention, cette opération peut aboutir à une perte de données.
- Renomme ou déplace dans le dossier de destination les fichiers et répertoires renommés ou déplacés dans le dossier source. Ces fichiers identiques présents dans la source et dans la destination, mais dont le chemin diffère parce qu’ils ont été renommés ou déplacés dans la source, seront déplacés et/ou renommées dans la destination. Les attributs de fichiers lecture seule, caché ou système qui ont changé dans la source seront synchronisés dans la destination. Les attributs des dossiers ne sont pas synchronisés.
Par défaut, Echosync ignore les fichiers ayant l’attribut système. Il est possible d’inclure ces fichiers en définissant le paramètre IgnoreSystemFiles à false
dans le fichier de configuration AdvancedSettings.json, figurant dans le répertoire Profiles.
Pourquoi mes fichiers sont-ils identifiés comme différents alors qu’ils n’ont pas été modifiés ?
Echosync se base sur les dates de modifications des fichiers pour identifier les fichiers devant être mis à jour. Mais tous les systèmes de fichiers n’ont pas la même précision lors de l’horodatage et des arrondis dépassant la seconde peuvent se produire lors de la copie des fichiers.
Par exemple, les horodatages des fichiers sur les lecteurs FAT (FAT16, FAT32, exFAT) sont arrondis aux deux secondes les plus proches (nombre pair) lorsque le fichier est écrit sur le lecteur. Les horodatages des fichiers sur les lecteurs NTFS sont arrondis à la centaine de nanosecondes la plus proche lorsque le fichier est écrit sur le lecteur. Ainsi, quand des fichiers sont copiés d’un disque NTFS vers un disque FAT, l’horodatage du fichier est arrondi à la seconde paire suivante. Il peut donc y avoir un écart allant jusqu’à 2 secondes dans la date de modification du fichier bien que le fichier n’ait subi aucune modification de son contenu.
Ce tableau illustre ce principe par quelques exemples :
Horodatage du fichier sur une partition NTFS | Horodatage du fichier après copie sur une partition FAT |
---|---|
7 h 31 min 0 s 000 ms | 7 h 31 min 0 s 000 ms |
7 h 31 min 0 s 001 ms | 7 h 31 min 2 s 000 ms |
7 h 31 min 1 s 000 ms | 7 h 31 min 2 s 000 ms |
7 h 31 min 1 s 999 ms | 7 h 31 min 2 s 000 ms |
De même, le système de fichiers NTFS stocke les valeurs horaires au format UTC, de sorte qu’elles ne sont pas affectées par les changements de fuseau horaire ou d’heure d’été. Le système de fichiers FAT stocke les valeurs temporelles en fonction de l’heure locale de l’ordinateur. Par exemple, un fichier enregistré à 15h00 PST à Washington est vu comme étant à 18h00 EST à New York sur un volume NTFS, mais il est vu comme étant à 15h00 EST à New York sur un volume FAT.
Si Echosync ignore par défaut les écarts de millisecondes, un écart d’une seconde ou plus est considéré comme une modification potentielle. Par conséquent, il est recommandé d’éviter de synchroniser des dossiers entre lecteurs NTFS et FAT. Les systèmes de fichiers FAT destinés à n’être utilisés que sous Windows seront opportunément convertis ou reformatés en NTFS, plus performant.
Comment programmer les synchronisations ?
Echosync ne dispose pas de programmateur qui lui est propre. Cela aurait supposé d’avoir en permanence un programme résident en mémoire pour déclencher les synchronisations, générant une consommation accrue en mémoire et un allongement du temps de démarrage de la machine.
Toutefois, les synchronisations pouvant être lancées en ligne de commande, il est relativement aisé d’automatiser les synchronisations avec le planificateur des tâches de Windows. Il est recommandé d’utiliser Echocli pour programmer ses synchronisations, même si cela est aussi possible avec Echosync.
En ligne de commande
Le lancement des opérations de synchronisation avec Echocli est documenté ci-dessus.
Avec l’interface graphique
Il est possible de donner les noms des profils en argument à l’exécutable d’Echosync, étant précisé que les caractères génériques sont correctement interprétés (ex. : NAS* lancera la synchronisation de tous les profils commençant par ‘NAS’). Si les noms de profils contiennent des espaces, il convient de les entourer avec des guillemets lorsqu’ils sont passés en arguments à Echosync.
Exemple : Echosync.exe NAS* profil1 "profil 2"
Il est possible de démarrer Echosync en mode dit « silencieux ». Ce mode masque l’écran de démarrage et réduit automatiquement la fenêtre du logiciel dans la barre des tâches. Pour ce faire, il suffit de passer l’argument /silent
en ligne de commande.
Il est possible également de définir en ligne de commande le comportement d’Echosync à l’issue des opérations de synchronisations.
Comment détecter les erreurs de synchronisation ?
Même après la fermeture du logiciel, il est possible de consulter le journal des synchronisations pour vérifier le bon déroulement des opérations de comparaison et de synchronisation. Attention, si la taille du journal des synchronisations excède 5 Mo, il sera renommé (ajout d’un horodatage entre parenthèse) et un nouveau fichier journal sera créé.
Avec l’interface graphique
La colonne Statut du rapport de comparaison mentionne, le cas échéant, la raison pour laquelle la synchronisation d’un élément n’a pu se réaliser avec succès.
Il est possible de consulter le journal des opérations précédemment effectuées en cliquant-droit sur un profil et en sélectionnant la commande Voir le journal des synchronisations.
En ligne de commande
Les éventuelles erreurs survenant durant les opérations de synchronisation seront affichées dans la console.
La localisation du journal des opérations est précisée à chaque utilisation des commandes list
, compare
et sync
d’Echocli.
Peut-on lancer la synchronisation ou la comparaison de plusieurs profils simultanément ?
Si plusieurs profils sont sélectionnés dans Echosync, ou spécifiés en paramètres dans Echocli, lorsque la comparaison ou la synchronisation est lancée, les opérations se réalisent de façon séquentielle. Dans Echosync, le statut des profils mentionne le départ différé d’une opération de comparaison ou de synchronisation.
Un démarrage simultané des opérations peut être forcé en lançant explicitement l’opération souhaitée pour chaque profil. Cela n’est bénéfique en termes de performance qu’en de très rares circonstances. En effet, il ne sert à rien de lancer simultanément plusieurs synchronisations si le débit maximal en lecture/écriture du support de stockage mis à contribution est atteint ou si la bande passante de la connectique utilisée (USB 2 notamment) est saturée.
Comment programmer l’extinction du PC ou la fermeture d’Echosync à la fin des opérations de synchronisation ?
Avec l’interface graphique
Le menu Options du logiciel permet de choisir une action à réaliser une fois les opérations de synchronisation achevées : éteindre l’ordinateur, le mettre en veille prolongée (hibernation) ou fermer Echosync (sans condition ou uniquement si aucune erreur n’est survenue lors des synchronisations).
L’extinction automatique du PC, la mise en veille prolongée du PC ou la fermeture d’Echosync peut également être programmée dès le démarrage du logiciel en ajoutant respectivement l’argument /shutdown
, /hibernate
, /exit
ou /exitonsuccess
à la ligne de commande.
En ligne de commande
Echocli ne dispose d’aucune option spécifique pour programmer l’extinction automatique du PC à la fin des opérations de synchronisation. Toutefois, Echocli étant un logiciel en ligne de commande, il est possible d’appeler l’outil shutdown.exe de Windows à la suite d’Echocli dans un script shell (.ps1, .bat, .cmd).
Comment exécuter automatiquement des actions avant ou après une opération de synchronisation ?
Echosync ne permet pas de spécifier des commandes à exécuter avant ou après une synchronisation, comme fermer ou lancer un logiciel tiers. Toutefois, il est possible de créer un script avec le langage de son choix (ex. PowerShell) qui appellera lui-même Echocli le moment voulu avec les bons paramètres.
Des fichiers ont été supprimés par erreur suite à une mauvaise manipulation. Que puis-je faire ?
Echosync est un logiciel de synchronisation de fichiers et non un logiciel de sauvegarde de données, en ce sens qu’il ne permet pas de restaurer une version antérieure d’un fichier en cas de fausse manipulation ayant entrainé une perte de données.
Notez que les fichiers supprimés par Echosync ne passent pas par la corbeille.
En l’absence de sauvegarde des données perdues, il reste toujours possible de tenter d’utiliser des outils de récupération de données, tels que Windows File Recovery de Microsoft.