Synology计划任务执行Ubuntu到Synology的Rsync同步失败
Synology计划任务执行Ubuntu到Synology的Rsync同步失败
看起来你遇到的问题很典型——手动跑rsync命令完全正常,放到Synology计划任务里就掉链子,核心报错是rsync: mkdir "/volume1/Movies\#015" failed: Permission denied (13),我来帮你拆解一下:
问题根源
\#015是ASCII码里的回车符(CR),这说明你在计划任务里配置的目标路径/volume1/Movies后面偷偷带了一个隐藏的回车符。当计划任务执行时,rsync会把这个回车符当成路径的一部分,试图创建一个名叫Movies\#015的奇怪目录,这个目录既不是你原本要同步的目标,权限配置自然也不匹配,所以才会抛出权限拒绝的错误。
解决步骤
清理隐藏的回车符
- 如果是用脚本文件执行:打开脚本用
nano或者其他编辑器仔细检查,或者用cat -A 你的脚本名.sh命令查看所有隐藏字符(回车符会显示为^M)。找到后删掉路径末尾的多余字符,保存脚本。 - 如果是直接在计划任务里粘贴的命令:不要复制粘贴,手动重新输入一遍目标路径
/volume1/Movies,确保没有带过来任何隐藏格式字符。
- 如果是用脚本文件执行:打开脚本用
优化rsync命令(可选但推荐)
你的命令里-avrhv重复了-v参数(冗余的 verbose 输出),可以改成-avrh,虽然这不是报错的原因,但精简参数会让命令更干净。修正后的完整命令参考:rsync -avrh --no-o --no-g --no-perms --delete -e "ssh -p 1433 -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" raf@192.168.1.3:/mnt/raid/0/Movies/ /volume1/Movies重新测试计划任务
保存修改后,手动触发一次计划任务,应该就能正常完成同步了。
备注:内容来源于stack exchange,提问作者Raf
相关产品推荐
相关产品推荐

