Próbowałem użyć rsync na OSX do Linuxa lub Unixa, nad którym nie mam dużej kontroli. Robiłem coś takiego
rsync -avz -e ssh remoteuser@remotehost:/remote/dir /this/dir/
Wystąpił błąd:
bash: rsync: nie znaleziono polecenia rsync: połączenie nieoczekiwanie zamknięte (do tej pory odebrano 0 bajtów) [odbiornik] błąd rsync: nie znaleziono polecenia zdalnego (kod 127) w /SourceCache/rsync/rsync-37.3/rsync/io.c(452 ) [odbiornik = 2.6.9]
Jednak po przeczytaniu dokumentacji zaczynam myśleć, że tak naprawdę musiałbym zainstalować demona rsync na zdalnym hoście.
- Czy muszę zainstalować serwer rsync na zdalnym hoście?
- Darmowe alternatywy - GUI lub inne niż GUI - które nie wymagają instalowania niczego na zdalnym hoście ?
Dzięki!
rsync
?Odpowiedzi:
Potrzebujesz komendy rsync na serwerze, ale nie musisz uruchamiać demona.
Uzyskać rsync binarnego, który działa na serwerze, umieścić go gdzieś w domu, i dodać tę flagę do linii komend:
--rsync-path=/home/user/path/to/rsync
.Jeśli nie chcesz kopiować rsync na serwery, możesz użyć scp lub sshfs.
W takim przypadku rsync będzie działał całkowicie lokalnie, ale zmiany zostaną propagowane na serwer.
źródło
Musisz mieć rsync na zdalnym hoście - niekoniecznie serwer rsync (który, jak sądzę, i tak nie obsłuży połączenia ssl), ale rsync na lokalnym urządzeniu musi porozmawiać z rsync na zdalnym komputerze. Używasz ssh, aby połączyć dwa.
Zakładając, że rsync istnieje na zdalnym polu, nie znajduje się on w domyślnej ścieżce wyszukiwania dla ssh zalogowanej w powłoce. W zależności od preferencji i uprawnień na zdalnym urządzeniu możesz spróbować
lub coś podobnego. Jeśli rsync jako plik wykonywalny (serwer vice) nie istnieje na zdalnym hoście, należy go dodać.
źródło
Nie ma sensu używanie rsync bez uruchamiania demona rsync na zdalnym hoście, pomimo kreatywnego rozwiązania sshfs zaproponowanego powyżej. Cała idea wydajności w rsync polega na tym, aby dwa wystąpienia porównywały swoje lokalne kopie zestawu danych, lokalnie obliczając sumy kontrolne, porównując je przez sieć i przesyłając tylko rzeczywiste dane dla tych części plików, które faktycznie się różnią.
Jeśli używasz sshfs lub dowolnego montowania w sieci, ukrywa to tylko fakt, że musi skopiować cały zestaw danych w sieci ze zdalnego hosta, aby obliczyć sumy kontrolne lokalnie, a następnie przesłać różnice. Szybsze i tańsze byłoby usunięcie wszystkiego lokalnie i „scp -r” partii.
źródło
Wypróbuj SCP . Ponieważ masz już dostęp do ssh, nie musisz instalować niczego innego na zdalnym hoście :)
Aby skopiować pliki ze zdalnego hosta na localhost użyj:
Lub skopiuj pliki z hosta lokalnego na hosta zdalnego za pomocą:
źródło
scp -r