설정은 RSYNC_RSH
작동하지 않지만 --rsh
옵션은 작동합니다. 왜?
rsync
이 --rsh
옵션을 올바르게 사용하십시오.
$ rsync --rsh "echo" invalid invalid::invalid
rsync: server sent "invalid rsync --server --daemon ." rather than greeting
rsync error: error starting client-server protocol (code 5) at main.c(1657) [sender=3.1.3]
그러나 나는 그것이 동일한 효과를 가질 것이라고 예상했지만 RSYNC_RSH
그렇지 않습니다.
$ RSYNC_RSH=echo rsync invalid invalid::invalid
rsync: getaddrinfo: invalid 873: Name or service not known
rsync error: error in socket IO (code 10) at clientserver.c(127) [sender=3.1.3]
버전 3.1.2-1+deb9u1 및 3.1.3-5.fc29.x86_64를 사용해 보았습니다 rsync
.
답변1
이는 설계된 대로 작동합니다.
rsync "데몬" 구문을 사용하고 있습니다: hostname::module
. 이것을 사용하면 --rsh
(예를 들어) 원격 쉘을 사용하여 서버에 연결하지만 이것을 ssh
사용하면 rsyncd.conf
.아니요 --rsh
, 이는 TCP 포트 873에서 rsync 서버에 대한 암호화되지 않은 네트워크 연결을 설정하려고 시도합니다.
설정으로 RSYNC_RSH
인해 rsync "데몬" 구문이 원격 셸을 사용하지 않습니다.
RSYNC_RSH
"환경 변수"입니다. 전체 환경에 맞게 설정되도록 설계되었습니다. 필요할 때 rsync에서 사용하는 원격 셸을 변경합니다.아니요rsync "데몬" 구문을 사용하세요. 이는 여러 가지 원격 셸이 있었던 예전에는 유용했기 때문에 rsync는 어떤 것을 가장 많이 사용했는지 알 수 없었습니다.