lsyncd提示无法使用rsync chown选项同步,求排查语法错误
排查lsyncd "无法使用rsync chown选项运行同步" 报错
配置语法的核心问题
你当前的配置里,rsync = { chown = webdev:webdev }这一行存在Lua语法错误:
- 在lsyncd依赖的Lua配置语法中,字符串类型的参数必须用单引号或双引号包裹。你直接写
webdev:webdev会被Lua当成变量解析,而不是用户:组的字符串值,这会导致lsyncd无法正确传递chown参数给rsync,进而触发报错。
修正后的配置
把chown的值用引号包裹起来就行,修正后的完整配置如下:
settings = { logfile = "/var/log/lsyncd/lsyncd.log", statusFile = "/var/log/lsyncd/lsyncd.status" }, sync { default.rsync, source = "/home/path1", target = "/home/path2", delay = 15, rsync = { chown = "webdev:webdev" } }
额外验证步骤
- 修正配置后,重启lsyncd服务:
systemctl restart lsyncd - 实时查看日志确认是否解决问题:
tail -f /var/log/lsyncd/lsyncd.log - 如果仍然报错,检查运行lsyncd的用户是否拥有目标目录
/home/path2的chown权限——毕竟rsync执行chown操作需要足够的权限才能生效。
内容的提问来源于stack exchange,提问作者josias
相关产品推荐
相关产品推荐

