Linux 版本 Syncthing 安装部署以及权限设置

来源:本站原创 点击数: 发布时间:2025年11月28日

适用系统:CentOS / Rocky / AlmaLinux / Ubuntu / Debian / openEuler 等
适用版本:Syncthing v1.x / v2.x(含 2.0.11)


1. 下载与安装 Syncthing

1.1 创建目录

sudo mkdir -p /opt/syncthingcd /opt/syncthing

1.2 下载最新 Syncthing(以 x64 为例)

wget https://github.com/syncthing/syncthing/releases/download/v2.0.11/syncthing-linux-amd64-v2.0.11.tar.gz #具体根据环境来下载,此处x86架构
tar -zxvf syncthing-linux-amd64-v2.0.11.tar.gzmv syncthing-linux-amd64-v2.0.11/* /opt/syncthing/

1.3 添加执行权限

chmod +x /opt/syncthing/syncthing

2. 配置运行用户

不要用 root 运行 Syncthing(安全风险)。

推荐使用与网站应用相同的用户来配置 www-data

sudo mkdir /home/www-data #用户目录必须要有,默认有这个就无需创建,会写入缓存问题
sudo chown www-data:www-data /home/www-data
sudo chmod 700 /home/www-data

3. 创建 Syncthing 配置目录

Syncthing 启动需要写入配置文件(config.xml)等:

sudo mkdir -p /opt/syncthing/config
sudo chown -R www-data:www-data /opt/syncthing/config
sudo chmod -R 750 /opt/syncthing/config

4. 测试非 root 用户运行 Syncthing

sudo -u www-data /opt/syncthing/syncthing -home=/opt/syncthing/config

若没有报错(如已启动 GUI),则说明权限正常。

Ctrl+C 结束(配置已生成)。


5. 创建 systemd 服务(自动启动)

编辑:

sudo vi /etc/systemd/system/syncthing.service

填入:

[Unit]
Description=Syncthing - File Synchronization
After=network.target
[Service]
User=www-data
Group=www-data
WorkingDirectory=/opt/syncthing
# 配置目录
Environment="STHOME=/opt/syncthing/config"
# 面板监听地址
Environment="STGUIADDRESS=0.0.0.0:8384"
ExecStart=/opt/syncthing/syncthing
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target

6. 启动 Syncthing

sudo systemctl daemon-reload
sudo systemctl enable syncthing
sudo systemctl restart syncthing
sudo systemctl status syncthing

显示 active (running) 即成功。

访问:

http://服务器IP:8384/

7. 目录权限说明

所有被同步的目录必须满足:

  • 存在

  • Syncthing 运行用户 www-data 具有读写执行权限
    (网站应用相同用户同步过去的文件自动具备该用户权限,适用前后台分离场景,只做冷备无需权限一致)

  • .stfolder 可成功创建

例如同步目录 /home/www/webfuture

sudo chown -R www-data:www-data /home/www/webfuture
sudo chmod -R 755 /home/www/webfuture

同步目录 /home/bakup

sudo mkdir -p /home/bakup
sudo chown -R www-data:www-data /home/bakup
sudo chmod -R 750 /home/bakup

8. 常见错误与解决方案

错误信息原因解决方法
permission denied目录没有权限chown + chmod
folder marker missing (.stfolder)目录无法写入给权限 或创建目录
Failed to save .stignore运行用户无写权限给目录属主给 Syncthing 用户
Failed to acquire lock已有 Syncthing 实例在运行停止 systemd 或 kill 进程
Unknown flag -o参数写错删除不支持的 flag
服务能运行但同步失败目录属主错误检查 chown