Syncthing配置以www-data用户运行
问题描述:如果直接以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查看配置文件具体生成在哪