Local Sync with Syncthing (LAN) DRAFT
Keep several Linux computers on the same home network in sync using Syncthing. This guide sets up a Syncthing service on Linux Mint Debian Edition (LMDE) that runs automatically at boot and syncs /home/public/PUBLIC-SYNC and /home/jro/JRO-SYNC across all machines.
What this does: any file you add, change, or delete in a shared folder on one computer appears on all the others, over the local network (no cloud, no monthly fee).
Before you start
- All computers on the same local network (or router).
- All running Linux Mint Debian Edition (or similar Debian-based system).
- You have
sudoaccess on each machine. - Suggested: three Dell computers — two desktops and one laptop.
Step 1 — Install Syncthing
Run these commands on each computer:
sudo apt update
sudo apt install -y syncthing
Check it installed:
syncthing --version
Step 2 — Create the shared folders
Create the folders you want to sync, on each computer. Use the exact same paths everywhere.
sudo mkdir -p /home/public/PUBLIC-SYNC
sudo mkdir -p /home/jro/JRO-SYNC
Set reasonable ownership so your normal user can use them:
sudo chown -R jro:jro /home/public/PUBLIC-SYNC
sudo chown -R jro:jro /home/jro/JRO-SYNC
(Adjust the username if yours is different from jro.)
Step 3 — Create a systemd service to run as root
Syncthing normally runs as the logged-in user. To run it as a background service that starts at boot (even before you log in), create a systemd service file on each computer.
Create the service definition:
sudo nano /etc/systemd/system/syncthing-root.service
Paste the following:
[Unit]
Description = Syncthing (root service for LAN sync)
After = network-online.target
Wants = network-online.target
[Service]
Type = simple
ExecStart = /usr/bin/syncthing serve --home=/etc/syncthing
Restart = on-failure
User = root
Group = root
[Install]
WantedBy = multi-user.target
Save and close (in nano: Ctrl+O, Enter, then Ctrl+X).
Why run as root? The folders live under
/home/publicand/home/jro, and this keeps one simple configuration shared across the machines. If you prefer, you can skip this and run Syncthing as your normal user instead — the steps are the same, just omitUser=root.
Step 4 — Enable and start the service
sudo systemctl daemon-reload
sudo systemctl enable syncthing-root.service
sudo systemctl start syncthing-root.service
Verify it is running:
sudo systemctl status syncthing-root.service
You should see Active: active (running).
The service will also start automatically on every boot from now on.
Step 5 — Pair the computers together
Syncthing uses the web interface to set up syncing. Open it on each computer:
Open your browser and go to http://127.0.0.1:8384.
Then, on the first computer:
- Click Actions → Show ID and copy the device ID (a long fingerprint string).
- On the second computer, click Add Remote Device and paste the first computer's ID.
- Repeat so each computer knows the others.
For three computers (A, B, C), add: - A → B and A → C - B → A and B → C - C → A and C → B
Step 6 — Add the folders
Now connect each folder to the devices:
- On each computer, click Add Folder.
- Folder ID:
public-sync, Folder Path:/home/public/PUBLIC-SYNC. Under Sharing, tick every other computer. - Create a second folder: Folder ID:
jro-sync, Folder Path:/home/jro/JRO-SYNC. Tick every other computer. - Click Save.
Use the same Folder ID on all computers so Syncthing knows they are the same folder.
Step 7 — Test it
- On computer A, create a test file:
bash echo "hello" > /home/public/PUBLIC-SYNC/test.txt - Wait a few seconds, then check computer B:
bash cat /home/public/PUBLIC-SYNC/test.txt - If you see
hello, syncing works. Delete the test file when done.
Step 8 — Keep it running
Everything is automatic from here:
- Syncthing starts on boot and runs in the background.
- New, changed, and deleted files propagate to all connected computers.
- You can monitor status anytime at http://127.0.0.1:8384 on any machine.
Managing the service
sudo systemctl status syncthing-root.service # check status
sudo systemctl restart syncthing-root.service # restart
sudo systemctl stop syncthing-root.service # stop
Troubleshooting
- Folders not appearing: make sure the Folder ID matches on every computer and the folder is shared with the correct devices.
- Can't reach the web UI: confirm the service is running with
sudo systemctl status syncthing-root.service, then reload the page athttp://127.0.0.1:8384. - Sync is slow: Syncthing syncs over the local network; make sure all machines are on the same router/subnet.
- Permission errors: confirm ownership is set (Step 2) with
ls -la /home/public.
Summary
You now have a self-hosted, always-on sync system across your Dell computers using Syncthing as a root systemd service. Add a file on one machine and it shows up on all the others — no cloud service required.