Syncthing配置以www-data用户运行

作者: 来源:本站原创 点击数: 发布时间:2024年12月08日

问题描述:如果直接以root用户运行Syncthing,会造成后台新增文件同步到前台后变为root权限,网站无法以www-data用户读取或执行

解决办法:

此处以syncthing安装完成后为例,例如路径为/opt/syncthing-linux-arm64-v1.28.0/syncthing

1.修改同步软件程序文件夹权限为www-data

chown -R www-data:www-data /opt/syncthing-linux-arm64-v1.28.0/

chmod 755 /opt/syncthing-linux-arm64-v1.28.0/

2.修改syncthing.service服务文件,以www-data用户和组运行,并设置服务文件权限

vi /etc/systemd/system/syncthing.service

chown -R www-data:www-data /etc/systemd/system/syncthing.service

chmod 755 /etc/systemd/system/syncthing.service



3.同步软件调试配置时需要在网站根目录生成.stignore等文件,所以网站根目录需要给写入权限

sudo chmod -R u+w /data/www/webfuture

4.重启syncthing服务,会在 /home/www-data下生成config.xml配置文件;如果之前调试完成了,那么把/root下的config.xml文件覆盖即可

注意syncthing软件从1.27.0 版本开始默认配置目录变为$HOME/.local/state/syncthing/config.xml 

所以注意重启syncthing服务后用systemctl status syncthing.service查看配置文件具体生成在哪