我正在尝试使用非标准端口将本地文件夹同步到远程服务器,我的 rsync 命令如下:
rsync -avz ~/Research/Folder1/folder2 -e "ssh -p 3345" reusr@yyy.xxx.xx.xxx:/home/reusr/folder1/folder2
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
bash: rsync: command not found
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [sender=3.1.3]
Run Code Online (Sandbox Code Playgroud)
当我跑步时,rsync --version我得到
rsync version 3.1.3 protocol version 31
Run Code Online (Sandbox Code Playgroud)
我不确定为什么command not found会发生该错误或后续错误。
我使用 OSX Maojave 作为我的本地机器,使用 Debian 服务器作为我的远程机器。
Sta*_*Cat 11
您的本地 rsync 需要从远程服务器上的 SSH 启动远程 rsync,但无法找到它,因为它可能不在其路径中。
这就是“找不到命令”错误的来源(即,这表示您的本地 rsync 无法从远程机器上的 SSH 会话中找到远程 rsync 可执行文件)。
您需要找出远程服务器上 rsync 的路径并将该部分作为您的 rsync 参数。您需要添加的参数是:
--rsync-path=/path/to/remote/rsync
Run Code Online (Sandbox Code Playgroud)
其中 /path/to/remote/rsync 是 rsync 命令在远程服务器上的位置。由于您的远程 rsync 服务器在 Debian 上运行,这可能是 /usr/bin/rsync
所以你的 rsync 命令变成:
rsync -avz ~/Research/Folder1/folder2 -e "ssh -p 3345" --rsync-path=/path/to/remote/rsync reusr@yyy.xxx.xx.xxx:/home/reusr/folder1/folder2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11842 次 |
| 最近记录: |