如何暂时禁用本地转发

我有我的~/.ssh/config文件条目与本地转发定义一样

 HOST myServer hostname 10.10.0.1 user xyz LocalForward 8080 localhost:80 LocalForward 4000 127.0.0.1:4000 ... 

这就像一个魅力,但我也有脚本来同步一些数据。
这些脚本在已经连接的情况下尝试连接到服务器时会显示许多警告。

 bind: Address already in use channel_setup_fwd_listener_tcpip: cannot listen to port: 8080 bind: Address already in use channel_setup_fwd_listener_tcpip: cannot listen to port: 4000 .... 

有没有一个简单的方法来使用sshrsync与一个选项来禁用会话的所有本地转发?

显然我可以复制和粘贴每个configuration块,并build立一个和一个没有本地前锋,但我希望有一个更好的解决scheme。

ssh_configClearAllForwardings选项,它正是你所需要的:

ClearAllForwardings

指定清除configuration文件或命令行中指定的所有本地,远程和dynamic端口转发。 当使用ssh(1)命令行清除在configuration文件中设置的端口转发时,此选项非常有用,并由scp(1)和sftp(1)自动设置。 参数必须是或不是(默认)。

你可以使用它作为命令行选项:

 ssh -O ClearAllForwardings=yes host