rsync跨端口传输
时间: 2024-08-12 12:05:29 浏览: 89
rsync是一个强大的文件同步工具,它支持跨主机传输,即可以在不同计算机之间复制文件。默认情况下,rsync使用TCP协议,并监听或连接到标准的873端口(这是无人值守服务器上rsync服务常用的端口)。如果你需要通过非标准端口进行传输,或者有防火墙限制等安全考虑,你可以指定`--port`选项。
例如,如果你想使用9000作为rsync的端口号,命令会像这样:
```bash
rsync -avz --port=9000 source:/path/to/local/file destination.com:/path/to/remote/directory
```
在这里,`-a`表示归档模式(archive),`v`用于详细显示进度,`z`启用压缩以减小网络带宽需求。
如果目标机器上没有监听这个端口的rsync服务,你需要确保其已经在远程机器上配置并运行。同时,双方的防火墙也需要设置允许相应的端口访问。
相关问题
rsync指定端口号传输
您可以使用 `-e` 参数来指定 rsync 使用的端口号进行传输。例如,如果您想使用端口号 1234 进行传输,可以这样使用:
```
rsync -e 'ssh -p 1234' <source> <destination>
```
其中 `<source>` 是要传输的源文件或目录,`<destination>` 是目标位置。
这个命令将使用 SSH 连接,并通过指定的端口号进行传输。请确保目标主机上的 SSH 服务监听了指定的端口号。
rsync修改随机端口选项不好使
如果你使用 `rsync` 命令时指定了 `-e` 选项来指定随机端口,但发现不起作用,可能是因为 `rsync` 默认使用了 `ssh` 协议,而 `ssh` 协议并不支持随机端口。
如果你想要使用随机端口,可以使用 `-E` 选项来指定自定义的传输程序,例如:
```
rsync -avz -E "ssh -p 12345" /path/to/source user@destination:/path/to/destination
```
这样就可以指定自定义的传输程序,并且使用指定的端口进行传输。注意,这里的 `-p` 选项指定的是 ssh 的端口,不是 rsync 的端口。
阅读全文