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 |
