Gdy źródło i miejsce docelowe są zdalne, rsync narzeka:
The source and destination cannot both be remote.
rsync error: syntax or usage error (code 1) at main.c(1156) [Receiver=3.0.7]
Czy istnieje nie do pokonania przeszkoda techniczna, aby zmusić rsync do zrobienia tego? Czy jest to po prostu przypadek jeszcze nie wdrożony? Relatywnie łatwe jest utworzenie lokalnego bufora w pamięci, który pośredniczy w transferze między dwoma pilotami, przechowując zarówno skróty, jak i dane.
EDYTOWAĆ
Ponieważ ludzie przedstawiają pewne styczne sugestie, opublikowałem osobne pytanie szczegółowo opisujące mój konkretny przypadek użycia. Są to naprawdę dwa osobne i myślę, że warto poznać te szczegółowe informacje dotyczące rsync
Odpowiedzi:
dlaczego nie spróbować połączyć się ze zdalnym urządzeniem i rozpocząć transfer z tego miejsca. Jeśli używasz kluczy ssh, możesz jednak użyć hasła agenta do zarządzania uwierzytelnieniem.
To polecenie zaloguje cię do remoteHostA i uruchomi z tego rsync.
źródło
nie ma z tym problemu.
źródło
Można obejść ten problem, montując jeden (lub oba) zdalne systemy plików za pomocą
sshfs
. Następnie rsync potraktuje to tak, jakby było lokalne.Niestety spowoduje to duże wykorzystanie przepustowości na komputerze, na którym zamontowany jest system plików
sshfs
, dlatego polecam robić to tylko na komputerze, który ma dużą przepustowość między tobą a trzecim komputerem.Oczywiście idealnym rozwiązaniem jest bezpośrednie komunikowanie się maszyn. Nie mogę wymyślić żadnego dobrego powodu, dla którego mieliby tego nie robić.
źródło