我想从其他linux服务器上使用rsync将some_file复制到我的机器上(red hat 5.3)(red hat 5.3)
是否有可能复制文件而没有得到“权限被拒绝”。 ?
备注 – 130.146.120.11机器上的login名和密码是:
login= root密码=月亮
rsync -WavH --progress 130.146.120.11:/tmp/some_file . Permission denied. rsync: connection unexpectedly closed (0 bytes read so far) rsync error: error in rsync protocol data stream (code 12) at io.c(165)
它看起来像你需要提供密码来访问您的远程系统。 你可以通过使用--password-file=/path/to/file/containing/password来做到这一点。
rsync -WavH --password-file=/$HOME/passfile --progress [email protected]:/tmp/some_file .
确保/$HOME/passfile are 600的权限/$HOME/passfile are 600 ( chmod 600 /$HOME/passfile ),否则你可能会留下ypur root密码。
rsync可以连接到一个远程shell(默认)或一个监听TCP端口873的rsync守护进程。既然你没有声明你正在运行一个rsync守护进程,并且你没有在你的主机string中使用双冒号::假设你正在连接一个远程shell。 您的rsync二进制文件很可能使用rlogin,这是一个非常古老和不安全的协议,通常在大多数新发行版上都是禁用的。 使用远程shell的更优选选项是通过共享密钥身份validation使用SSH,然后在rsync命令中添加-e ssh或--rsh=ssh参数。
rsync -WavH --progress -e ssh [email protected]:/tmp/some_file .
我也build议你尽可能地不要使用root用户来做这种操作。 如果root是绝对必要的,我甚至更高(是一个字)build议您使用共享密钥,而不是密码validation。
希望这可以帮助。
尝试使用:
rsync -WavH –progress [email protected]:/ tmp / some_file。
我看不出为什么你不简单地使用SSH密钥authentication 。 这将是最简单的…