代码之家  ›  专栏  ›  技术社区  ›  andrewk

使用rsync从Windows传输到Linux

  •  4
  • andrewk  · 技术社区  · 15 年前

    不在这里,

    我正在尝试使用rsync将文件从windows传输到linux。 我有这个代码,但是我有一个错误

    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上的文件路径上。。我听说过cygwin,但还没试过

    我该怎么做才能找到工作的路呢?

    2 回复  |  直到 15 年前
        1
  •  8
  •   paxdiablo    15 年前

    如果使用CygWin在Windows框中进行rsync,则所需的本地文件几乎肯定是:

    /cygdrive/c/users/file.txt
    

    而不是:

    /c/users/file.txt
    
        2
  •  1
  •   askmish    13 年前

    写权利 rsyncd.conf 有点复杂。

    我收到错误信息

    @错误:chdir失败rsync错误:启动客户端服务器时出错 main.c(1296)的协议(代码5)[接收器=2.6.8]

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

    因为我想念 "use chroot = false" 我的指令 rsyncd.conf文件

    下面是一个例子 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 文件是在重新启动服务后创建/更改的,如果未完成,则在 rsyncd.conf文件 文件和rsync不使用它们,但不显示任何错误或信息!

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

    backup:<password>