DEV Community

疏影
疏影

Posted on

WebDAV for Photographers: Sync Lightroom Catalogs Across 3 Laptops

WebDAV for Photographers: Sync Lightroom Catalogs Across 3 Laptops

Three laptops, one Lightroom catalog, no Dropbox bill. Here's the exact WebDAV setup I use to keep my photo library in sync across my main editing machine, my travel laptop, and a low-power mini PC for backup.

The problem: Lightroom needs a real local file

Lightroom Classic's catalog (the .lrcat file) cannot live on a network share if you want performance. Period. Adobe says so, and after a year of trying, I agree.

But the actual photos (the .ARW, .CR3, .DNG files) can live on a network mount, because Lightroom just reads them sequentially during import and writes previews to the local catalog.

So the goal is:

  • Catalog: local SSD on each machine
  • Photos: on a WebDAV share, mounted as a drive letter on Windows
  • Edits: synced via XMP sidecar files (which are small text files)

The hardware

  • Main machine: Windows 11 desktop, 32 GB RAM, 1 TB NVMe, RTX 4070 (for export)
  • Travel laptop: MacBook Pro 14" M3, 16 GB RAM (running Lightroom Classic via Parallels, because Adobe still has no ARM native)
  • Backup mini PC: Beelink Mini S12, N100, 16 GB RAM, no GPU (just for nightly catalog backups)
  • Storage server: home server with 32 TB raw, RAID 6, 16 TB usable

Step 1: Set up the WebDAV server

The home server runs Nextcloud (Docker on Ubuntu 24.04). Nextcloud's WebDAV endpoint is enabled by default at /remote.php/dav/files/<username>/.

I created a folder called Photos-Master at the top of my Nextcloud Files area. This is where all the originals live.

Step 2: Mount on Windows 11 (main machine)

I use ScsDriver to mount the WebDAV share as drive letter P:.

Configuration:

  • Server: https://nextcloud.example.com/remote.php/dav/files/me/
  • Drive letter: P:
  • Display name: Photos-Master
  • Connect at startup: yes
  • Reconnect on disconnect: yes

In Lightroom Classic:

  • Edit → Catalog Settings → File Handling → "Store previews with catalog" (default)
  • Edit → Preferences → Presets → "Save settings to XMP" (enables the sidecar sync)
  • Add P:/Photos-Master/2024/2024-09-Italy as a top-level folder

Lightroom reads the previews from the local catalog (fast), reads the originals from the P: drive (just-in-time, no full sync).

Step 3: Mount on macOS (travel laptop)

On macOS, ScsDriver doesn't run natively, but I have two options:

Option A: Use the webdav command from curl in a launchd plist (mounts at /Volumes/Photos-Master). This is what I do.

sudo mount -t webdav https://me:app-password@nextcloud.example.com/remote.php/dav/files/me/Photos-Master /Volumes/Photos-Master
Enter fullscreen mode Exit fullscreen mode

In a launchd plist, this runs on boot.

Option B: Use the macOS "Connect to Server" dialog (Cmd+K) → https://.... Slower, less reliable.

Lightroom Classic via Parallels then sees /Volumes/Photos-Master as a network share. Slow but works for travel — I'm usually just flagging and rating, not editing.

Step 4: Mount on the backup mini PC (Windows 11 again)

The mini PC runs Windows 11 and uses ScsDriver with the same config as the main machine. It mounts P: automatically. I have a nightly scheduled task that does:

robocopy "C:/Users/me/Pictures/Lightroom/Lightroom Catalog.lrcat" "P:/Backups/Lightroom/2026-10-15/" /MIR
Enter fullscreen mode Exit fullscreen mode

This mirrors the local catalog (including all previews) to the WebDAV share every night. If my main machine dies, I can restore the most-recent catalog from the backup PC and the most-recent originals from the WebDAV share.

XMP sidecar files: the actual edit sync

This is the part most guides skip. Lightroom edits are stored in two places:

  1. The catalog (the .lrcat file)
  2. Optional XMP sidecar files (one per photo, same name, .xmp extension)

If I want edits to follow the photo files (so the travel laptop can see what I edited at home), I enable "Automatically write changes into XMP" in Preferences → Lightroom Classic → Metadata.

With XMP sidecars enabled, my edits live in:

  • P:/Photos-Master/2024/2024-09-Italy/DSC0001.ARW
  • P:/Photos-Master/2024/2024-09-Italy/DSC0001.ARW.xmp

When the travel laptop opens the same file, Lightroom reads the XMP and shows my edits. Two-way sync without a database.

What I do when traveling

  • Pre-trip: copy the catalog from the main machine to the travel laptop (one-time, ~500 MB)
  • Travel: shoot, import, edit, write XMPs to the mounted share
  • Hotel Wi-Fi: usually fast enough to read+write ARWs over WebDAV, but Lightroom reads previews first, so it's not blocking
  • Post-trip: bring the laptop home, open the same catalog, edits are already there (catalog + XMPs both sync)

Why ScsDriver specifically (and not just the Nextcloud client)

I tried the Nextcloud desktop client for 6 months. It works, but the workflow is:

  1. Open Finder/Explorer → navigate to the Nextcloud folder
  2. Drag the file into Lightroom
  3. Edit
  4. Save → the file syncs back

With ScsDriver:

  1. Lightroom sees P:/Photos-Master/... as a normal drive
  2. Edit
  3. Save → automatic, no drag-and-drop

The second workflow is the same as local. The first workflow is "one more step" that gets tedious over 5000 photos.

What I'd do differently if I started over

  • I would not bother with XMP sidecars if I had only one machine. They're only useful for multi-machine setups.
  • I would have set up the WebDAV mount on the mini PC first, not last. It would have saved me 2 months of "wait, did I back up the catalog this week?"
  • I would not have spent $200 on a "photo NAS" from a specialty vendor. A $200 Beelink + 2 used 8 TB drives is faster and cheaper.

Pricing (overseas)

  • $1.5 / month
  • $5.5 / year
  • $5.5 lifetime (limited-time, was $9.99)

CN users: the lifetime price in China is ¥20, separately listed on the official site.

FAQ

Q: Can I edit the catalog file directly over WebDAV?
A: Don't. It's a SQLite file with locking semantics, and over WebDAV the locks can be wrong. Keep the catalog local and sync it via robocopy/rsync.

Q: What about Capture One?
A: Same approach works. Capture One uses sessions instead of catalogs, but the sidecar model is the same.

Q: Does this work with a NAS (Synology/QNAP)?
A: Yes — Synology has WebDAV built in (/webdav/) and ScsDriver can connect to it. That's actually what I had before I moved to Nextcloud.

Q: What about Apple Silicon?
A: Lightroom Classic still requires Intel/Parallels. If you're all-M3, you can use Lightroom CC (the cloud version) instead, but it's a different workflow.

Top comments (0)