Ayant monté mon cloud personnel (à base de NAS Synology) je cherchais un moyen de synchroniser efficacement et facilement tous mes périphériques y compris Android. J’ai bien évidemment testé la solution CloudStation de Synology, à la fois serveur et client, mais à l’époque le client pour Linux en était encore à ses débuts et, dans mon cas, fonctionnait une fois sur deux. Je m’étais alors mis en recherche des diverses solutions accessibles depuis une base Linux et avait testé rSync, SFTP + script puis BitTorrentSync.
J’avais été séduit par le concept de ce dernier. Une interface, une synchronisation via le protocole BitTorrent et la possibilité de le mettre en œuvre très simplement. Cependant l’absence de publication du code source et la possibilité que ça passe par les serveurs de cette société m’avait un peu freinés. Je ne devais pas être le seul puisqu’une alternative libre et gratuite a rapidement vu le jour : Syncthing. De surcroît disponible via des dépôts Synology et Android. C’est aussi compatible OSX, Windows & BSD.
Clairement cet outil est génial, très simple d’installation et d’utilisation. Il me sert à synchroniser mes documents entre tous mes PC/smartphones mais aussi à rapatrier automatiquement sur mes NAS les téléchargements effectués via mes serveurs. C’est d’ailleurs ce dernier cas que je vais prendre en exemple dans ce tutoriel. Bien évidemment tout le contenu que je télécharge est libre de droit. Notamment certains logiciels/jeux Linux, c’est pourquoi vous verrez l’exemple du dossier /Linux par la suite.
Fonctionnement
J’ai un serveur distant avec le couple rTorrent/ruTorrent. Les téléchargements complétés sont automatiquement déplacés dans le dossier /home/aerya/torrents/Done/Sync
, /Sync contenant lui-même des sous-répertoires. J’aime bien quand c’est trié… Mais plutôt que de configurer SyncThing pour chaque sous-répertoire j’ai préféré tout regrouper dans /Done/Sync pour ne faire qu’une seule synchronisation globale.
En parallèle, chez moi, j’ai installé SyncThing sur un PC qui reste allumé H24 (qui me sert pour la TV via Kodi et quelques autres services aussi). Mais vous pouvez le mettre directement sur notre NAS, la configuration restant la même.
Une fois configuré et les 2 périphériques liés, SyncThing va scanner régulièrement la source (le serveur) et télécharger automatiquement tout ce qui ne l’a pas encore été sur les NAS. ST lie entre eux des périphériques via leurs IDs (ex. SUJRPLW-…-4BW2DU4) et, sur chacun d’eux, des dossiers, également via leurs IDs (ex. Sync, Linux, Documents, Photos…). C’est-à-dire que sur chaque périphérique que vous voulez synchroniser vous devez créer un partage avec la même ID.
Installation (Linux)
En USER, placez-vous dans votre /home
cd ~
Allez chercher le lien de DL de la version qu’il vous faut et téléchargez là sur votre machine
wget https://github.com/syncthing/syncthing/releases/download/v0.11.23/syncthing-linux-amd64-v0.11.23.tar.gz
Décompressez l’archive
tar xzvf syncthing*.tar.gz
Placez vous dans le dossier
cd syncthing*
Copiez les fichiers au bon endroit
sudo cp syncthing /usr/local/bin
Et retirez tout ce qui ne sert plus dans votre /home
cd ~
puis rm -rf syncthing*
Vous pouvez ensuite lancer SyncThing, en USER et non ROOT, afin de voir s’il fonctionne bien.
syncthing
Si c’est le cas vous avez l’interface sur http://votre_IP:8384
Le mieux est de lancer ST en screen afin de le laisser tourner tranquillement alors que vous quitterez votre terminal. En USER et non ROOT
screen -
S
Sync
puis syncthing
et quittez le screen avec « ctrl+a d ».
Attention à libérer les ports si vous avez mis en place des règles IPtables strictes. Port du GUI et port du protocole de synchronisation dans config.xml. Idem lorsque vous l’installez chez vous, sur NAS ou PC, vérifiez que les ports sont bien ouverts/redirigés selon la configuration de votre routeur/firewall/box FAI.
Configuration de SyncThing (nous verrons le partage ensuite)
La configuration, hors partages, est assez basique. Vous pouvez changer les ports directement dans config.xml ou bien passer par la WebUI et le menu Actions/Configuration
Partager un dossier
SyncThing lie entre eux des périphériques via leurs IDs (ex. SUJRPLW-…-4BW2DU4) et, sur chacun d’eux, des dossiers, également via leurs IDs (ex. Sync, Linux, Documents, Photos…). C’est-à-dire que sur chaque périphérique que vous ajoutez à ST vous devez créer un partage avec la même ID pour chaque dossier que vous voulez synchro sur l’un et l’autre des périphériques.
Vous pouvez lier des périphériques avant ou après avoir créé des partages de dossiers, peu importe l’ordre.
Dans cet exemple je veux partager le dossier /home/aerya/torrents/Done/Sync
de mon serveur distant avec le dossier /Sync sur mon NAS local. Comme vous le voyez le dossier /Sync contient à son tour plusieurs dossiers qui seront synchro dont /Linux.
Sur votre interface SyncThing vous pouvez retirer le partage par défaut puisque nous allons en créer un autre. Vous devez répéter cette étape sur chaque interface ST de chaque périphérique à synchroniser.
Ici, sur le serveur distant, cliquez sur Ajouter un répertoire et créez le partage pour le dossier.
Si vous suivez ce tutoriel (contrairement à ce screen…) vous ne verrez alors rien dans Partage avec des machines. On le voit plus tard.
Répertoire maître : il s’agit là d’indiquer à ST que ce dossier sera la source de la synchro. Je veux que tout ce qu’il contient soit envoyé mais ni remplacé ni effacé par un autre partage. Utile si vous partagez des fichiers destinés à être supprimés chez vous mais à laisser en seed sur votre serveur par exemple. En revanche dans le cas d’un partage de type cloud il est alors évident qu’il ne faut pas cocher cette case sinon vos documents locaux ne seront pas mis à jour sur votre cloud.
Une fois ce partager créé vous le voyer sur l’accueil de votre WebUI
Maintenant, sur le PC local (ou le NAS). Dans mon cas les NAS sont montés sur le PC. C’est-à-dire que j’y accède depuis le PC via /mnt/…
Mais si vous avez installé SyncThing sur votre NAS le chemin sera de ce type.

Lier des périphériques & dossiers
Il suffit de récupérer l’ID d’un des périphériques et de l’ajouter à l’autre. Le 1er va découvrir le second automatiquement.
Par exemple je récupère l’ID de SyncThing TV, donc chez moi, via Actions / Montrer l’ID
Et je vais l’entrer sur ST installé sur mon serveur via le bouton Ajouter un périphérique en bas à droite sur l’accueil. J’en profite pour lui indiquer de partager le dossier Sync.
Il ne vous reste qu’à patienter quelques instants et valider les demandes de partage des 2 côtés et vous pourrez alors apprécier de le regarder travailler :)
Par défaut le délai de scan, pour recherche de nouveau fichiers à synchroniser, est de 60 secondes. Vous pouvez le modifier sans dans le confi.xml soit via la WebUI, Actions / Avancé / Dossier « Sync » puis rescanIntervalS
Tous les éléments de configuration se trouvent dans leurs FAQs.
Testé et approuvé :)
Merci !
Merci pour le tuto !
Par contre, niveau vitesse je plafonne en download depuis mon serveur a 1Mo alors que en ftp j ai 3 × plus de débit ! C est pareil chez toi ?
J’avais plus de débit, environ les 2/3 de ma BP. Faudrait voir côté serveur ET chez toi si les ports sont bien ouverts/redirigés ?
Je vais checker ca , merci !
En effet, cela fonctionne maintenant beaucoup mieux ! Par contre je n’ai pas compris l’item machine maitre Je souhaite synchro ma box dans le dossier sync de mon NAS Je transfererais ensuite moi meme selon mon classement du fichier sync du NAs vers le fichier adequat je met donc le dossier maitre sur la seedbox , c’est bien cela ?… Lire la suite »
Le dossier Maître indique à ST de ne pas synchroniser « vers » mais uniquement « depuis » ce dossier. Ça permet donc de ne surtout pas effacer le contenu du dossier Maître, donc des partages en cours sur ta seedbox. ST retient le hash des fichiers transmis, il ne renverra donc pas un même fichier 2 fois.
Salut,
j’ai petit soucis depuis peu, Syncthing ne me propose plus les mises à jour. Y a t’il un moyen de le faire manuellement ? Ou est-ce qu’il faut que je sauvegarde mes réglages et tout reinstaller ?
Je suis sous debian Jessie pour info
Salut,
Même un start/stop ne l’aide pas ? Tu peux MàJ à la main bien entendu, je suppose que tu l’as installé comme suit : https://apt.syncthing.net/
Donc tu fais
sudo apt-get update
sudo apt-get upgrade synchting
Et ça devrait être bon.
Oui un start stop ne change rien. Non je l’avais installé avec ta méthode à l’époque, avec le fichier d’installation copié dans /usr/local/bin.
Ok, alors procède de la même manière mais en faisant un wget sur la dernière version et ça va remplacer tes fichiers. par sécurité sauvegarde ta configuration actuelle mais elle ne devrait pas être remplacée.
Ah ok parfait ! Merci pour ta réponse
J’ai pas trouvé pour éditer… Je viens de faire la manip, tout marche parfaitement ! Encore merci.
Super :)
Bonjour,
Super tuto, par contre, je voudrai limiter l’envoie/reception à un seul fichier à la fois, ou est ce qu’il faut régler cette option que je ne vois pas :/
Salut,
Ce n’est pas possible. Quel en serait le but ?
Mince, dans le but d’éviter qu’il y a plusieurs fichiers qui ce télécharge en même temps.
Car ce sont des gros fichiers et le temps sera diviser par X téléchargement en même temps…
Perso j’ai très rarement plusieurs DL simultanés, je sélectionne Oldest first pour la synchro en général.
Merci
Salut Merci pour ton tuto !! Syncthing fonctionne très bien, mais (oui il y a un mais !!) je suis confronté à un truc que je ne comprend pas trop: J’ai syncro un serveur vers un nas, coté serveur, j’ai ce message sur l’interface webgui en rouge « désynchronisé » pour régler ce problème je dois laisser les fichiers à synchroniser dans… Lire la suite »
Salut, merci :) Pour que tes fichiers « sources » soient effacés sur ton serveur il faut soit : – Configurer le synchro en sens unique serveur => maison (et tu peux rm à la main sur le serveur) – Configurer la synchro à double sens et les fichiers sur le serveur seront effacés quand tu les enlèveras de ton dossier local… Lire la suite »
Ok Merci
Je vais tester les deux :)
Bonsoir, merci pour le tuto qui m’a vraiment facilité la tâche dans la synchro de ma seedbox et mon NAS. Cependant je voudrais une aide car j’ai le message suivant qui apparaît : – Loading ignores: open /volume2/Download/.stignore: permission denied – Creating folder marker: open /volume2/Download/.stfolder: permission denied – Stopping folder « essai » (wxkqm-jbeij) – folder marker missing Merci pour toute… Lire la suite »
Salut, ça ressemble furieusement à un problème de droits (d’écriture) sur les dossiers, à vérifier.
bonjour, excusez mon ignorance mais je ne sais pas comment le résoudre si c’est le cas. Pouvez-vous me donner plus d’orientation? Merci
Pour ton NAS à toi de voir, sur Synology c’est dans FileStation/Propriétés du dossier/Permissions. Pour ton serveur Linux tu peux t’aider de ce site pour générer ta commande : https://chmodcommand.com/
Rebonjour, je suis parvenu à corriger l’absence de synchro. En effet il y avait un problème de permission. J’ai créé un utilisateur sc-syncthing dans le menu « utilisateur ou groupe » du menu « permission » à partir des propriétés du dossier concerné et cela a résolu le non démarrage de la syncho. Merci pour l’orientation.
Salut, content pour toi :)
j’ai regarder les permissions pour mon NAS concernant le dossier et ça semble bon (lecture/écriture). le message d’affiche sur ST de mon NAS et je pense que le problème est a ce niveau. J’ai recréer un autre dossier cible en veillant à ce que tout soit parfait coté permission mais le même message s’affiche. Coté serveur j’ai accès à l’interface… Lire la suite »
Si tu loues une SB on peut supposer que Syncthing est correctement configuré en effet. Pour le NAS tout dépend de sa marque et de son OS mais il est souvent plus simple d’autoriser tout le monde en RW pour le dossier en question.
Rebonjour, je suis parvenu à corriger l’absence de synchro. En effet il y avait un problème de permission. J’ai créé un utilisateur sc-syncthing dans le menu « utilisateur ou groupe » du menu « permission » à partir des propriétés du dossier concerné et cela a résolu le non démarrage de la syncho. Merci pour l’orientation.
Il aurait été pratique de dire dès le départ que tu es sur NAS Synology ;)