Command line interface rsync复制到本地而不是远程

Command line interface rsync复制到本地而不是远程,command-line-interface,rsync,duplicity,Command Line Interface,Rsync,Duplicity,我以前使用的备份脚本有问题 简而言之,它只是调用duplicity并命令它通过rsync将文件复制到NAS 但是,当我现在启动脚本时,它总是返回一个权限被拒绝的错误 我已经把范围缩小到rsync无法正常工作 在我的测试设置中,我现在执行以下代码: rsync -av test/ remoteuser@nas.domain.com 发生的情况是,在当前目录中有一个名为“remoteuser@nas.domain.com“创建并rsync将测试中的文件同步到该新文件夹中。 如果我将目标目录附加到远

我以前使用的备份脚本有问题

简而言之,它只是调用duplicity并命令它通过rsync将文件复制到NAS

但是,当我现在启动脚本时,它总是返回一个权限被拒绝的错误

我已经把范围缩小到rsync无法正常工作

在我的测试设置中,我现在执行以下代码:

rsync -av test/ remoteuser@nas.domain.com
发生的情况是,在当前目录中有一个名为“remoteuser@nas.domain.com“创建并rsync将测试中的文件同步到该新文件夹中。 如果我将目标目录附加到远程(…:/home/remoteuser/backup),它将返回前面提到的“权限被拒绝”错误


通过ssh连接到我的nas不会出现问题。顺便说一句。

感谢您的建议,但我找到了解决方案:

Rsync需要同时在客户端和服务器上运行才能同步文件。我检查过rsync以前是否安装过,它确实安装过。但是当我试图在NAS上用rsync本地复制一个测试文件时,我得到了一个错误,即服务没有运行

我发现由于一些未知的原因,需要在调用中将路径传递给rsync as选项,如下所示:

rsync --rsync-path=/usr/syno/bin/rsync ...
duplicity --rsync-options="--rsync-path=/usr/syno/bin/rsync" ~ rsync://remoteuser@nas.domain.com:/home/remoteuser/backup
现在脚本又开始工作了

作为旁注: 由于我使用了口是心非的语言,我必须按照以下方式编写完整的命令:

rsync --rsync-path=/usr/syno/bin/rsync ...
duplicity --rsync-options="--rsync-path=/usr/syno/bin/rsync" ~ rsync://remoteuser@nas.domain.com:/home/remoteuser/backup

它无法确定目标是要连接到的系统,因为您没有在最后使用通常的
。如果我使用,这就是我得到的错误:权限被拒绝,请重试。rsync:连接意外关闭(到目前为止接收到0字节)[sender]rsync错误:io.c(226)[sender=3.1.1]处的rsync协议数据流(代码12)中出现错误,请尝试作为
rsync-e-e“ssh-v”-av测试/remoteuser@nas.domain.com:
-听起来您对远程系统的ssh访问有问题(例如,密钥由桌面上的代理提供,但在脚本中运行时,它无权访问密钥).这是一个已知的原因-这是因为远程rsync不在标准位置。将来,对于类似的问题,您最好在superuser.com上提问,因为这实际上不是一个编程问题。是的,我意识到在我写下问题后:/这并不能解决问题。真正的问题是您必须在user@se正如@Petesh所说的那样。