← Back to downloads

Linux headless install guide

This is the no-GUI build of the SyncTato server, for machines with no graphical desktop — a home server or NAS box (x86_64). It runs as a background systemd service instead of a tray app. Setting up a Raspberry Pi instead? See the 64-bit or 32-bit Pi guide.

Requirements

  • Linux with systemd, glibc 2.17+ (any modern distro — Debian, Ubuntu, Fedora, etc.)
  • x86_64 CPU

Install

Extract the .tar.gz, open a terminal in that folder, and run:

./install.sh

This installs to ~/.local/bin and runs as a systemd user service — no root needed. It also enables lingering, so the service keeps running even when you're logged out, which is what you want on a server. It prints your pairing code at the end.

Pairing code

The headless server has no window, so pairing codes are read from the log. The install script prints the current one, and you can re-check it any time with:

journalctl --user -u synctato-server | grep -i 'pairing code'

Firewall

Allow inbound TCP on port 8443, or your phone won't find the server:

sudo ufw allow 8443/tcp                                  # Debian/Ubuntu/Mint
sudo firewall-cmd --add-port=8443/tcp --permanent && sudo firewall-cmd --reload   # Fedora/RHEL

Video/HEIC thumbnails

ffmpeg/ffprobe are bundled and installed alongside the server automatically — nothing extra to install.

Data location

The database and certificates live under ~/.local/share (your XDG data dir). Your actual photos and videos go under whichever media folder you choose in the app.

Uninstall

From the folder you extracted, run:

./uninstall.sh

Your photos and database are left in place.