I’ve recently switched from Unison sync to Syncthing. If you want to know why, please ask. I use it to synchronise all my data with my Linux Server (on 24/7) which in turn performs daily backups. I also use it to synchronise my Lightroom photo collection (about 1.3TB) along with the catalogue file to the Server and Laptop. I use the Server as a central hub and there is no direct connection between the Desktop and Laptop. Desktop and Laptop run Windows.
All seems to be working well, I just I have a couple of questions. Is there anyone else out there who is using Syncthing with Lightroom, what is your experience and is there anything I should be looking out for?
I also thought it might be helpful to share my experience of getting it up and running along with what may be a couple of tips. Please do correct me if I am wrong about anything.
As I was previously synchronising everything with Unison, the data sets already existed on each machine. After the very first sync, there were 1000s of errors. To correct these, I deleted the data on the Windows machines, (I have a good backup already in place) removed all folders and devices in all instances of Syncthing and started fresh. Then it was a long wait while Syncthing propagated the data from the Server to my Windows machines.
Once that was done I had 500 or so case insensitive duplicate file names, which can exist happily on Linux but not on Windows. I dual boot Linux on my Desktop and found some software called FSlint, which is a file cleaning utility including a function to find case insensitive duplicates. Then it was a lot of clicks to manually delete one file at a time. I did look for a script that might do this automatically, but didn’t find one. After Syncthing did it’s thing, a couple of minor glitches later, all appears to be working well.
I have the following ignore list on the server only. I assume I don’t need it on the windows machines too? The wildcard items are to exclude Lightroom previews and lock files while Lightroom is in use.
(?i)/System Volume Information
Again, please let me know if there is anything I should be aware of which I haven’t covered in relation to running Lightroom with Syncthing.
This has been my primary use case for years, though I’m slowly and reluctantly starting to switch to the new cloudy Lightroom now. In fact, I wrote the first proof of concept for Syncthing specifically because I wanted to sync my Lightroom photos from laptop to home when travelling. The way I do it have I folder per year for actual photos and a separate folder for the catalog, but it doesn’t matter much. I don’t ignore any of the stuff in the catalog (lock files etc), except for the backups which I let happen “individually” on each device. Some of the photos have lived on external SSDs formatted with ExFAT so I use ignore permissions on those.
I have had no issues with this, taking care only to not have the catalog open in more than one place at the same time. Since the lock file etc syncs, trying to open it in two places at once should result in complaints from Lightroom, which is good.
My setup is Mac-to-FreeBSD-or-Linux-to-Mac which is similar to your Windows-Linux-Windows. I don’t know that there’s anything in particular to take care of in a Windows-with-Linux-in-the-middle setup. Perhaps case sensitivity stuff when setting it up initially if there were discrepancies, but it sounds like you have that handled.
I can’t say anything about the other things, but I’d strongly advise to ignore these on the Windows side. They are specific to a particular partition and/or user account and I cannot think of a situation where you’d want to sync them. The last one can’t even be accessed under a normal user account.
If you don’t ignore them on Windows, you will get constant errors in Syncthing about “access denied” and such. I’d ignore desktop.ini on Windows too, although there’s no real harm in leaving it be, at least in your setup.
My list did not render well when I first post so I have edited it and just for clarity I have removed *.lrcat-data from the exclude list as I just found out that adobe advise to include .lrcat-data files in your backups…
I don’t fully understand the syntax of ignore list in relation to (?i) prefixes. I was lazy and copied those entries from another post assuming they are to exclude these files from syncing.
Was it my rendering that made you think I was not ignoring this files, or have I misunderstood the (?i) prefixes? If possible please point me to any documentation about the exclude list.