使用rsync从Windows传输到Linux

noob在这里,

我试图从Windows到Linux使用rsync传输文件。 我有这个代码,但我得到一个错误

rsync -avz -e ssh C:\users\file.txt root@123.45.67.89:/var/dir 

我得到这个错误源和目标不能都是远程的

如果我尝试

 rsync -avz -e ssh /c/users/file.txt root@123.45.67.89:/var/dir 

我得到, 没有这样的文件或目录

所以,我认为问题是在Windows上的文件的path..我听说过cygwin,但没有真正尝试过

我能做些什么来获得工作的path?

如果您使用CygWin来从Windows窗口的rsync,您想要的本地文件几乎肯定是:

 /cygdrive/c/users/file.txt 

而不是:

 /c/users/file.txt 

编写正确的rsyncd.conf有点复杂。

我收到错误消息

@ERROR:chdir失败rsync错误:在main.c(1296)[receiver = 2.6.8]处启动客户机 – 服务器协议(代码5)

2012/06/10 14:59:43 [9252] rsync:chdir / cygdrive / d失败:没有这样的文件或目录(2)

因为我错过了"use chroot = false""use chroot = false"指令

这是一个rsyncd.conf的例子:

 log file = c:/rsync.log auth users = backup secrets file = /cygdrive/c/Program Files/RSync/rsyncd.secrets [backup] comment = Backup this host path = /cygdrive/d use chroot = false strict modes = false read only = false transfer logging = yes hosts allow = 192.168.2.252 

确保rsync.log文件是在重新启动服务后创建/更改的,如果没有完成,你的rsync.log文件中有一些错误,rsync不会使用它们,但是不会显示任何错误或信息!

所以, rsyncd.secrets文件的格式是:

 backup:<password>