„Rsync” ze zdalnego na lokalny


14

Powiedzmy, że mam 2 maszyny:

  • lokalny (centos)
  • zdalny na IP: 123.123.123.123 port ssh 456 (serwer Ubuntu)

i chcę zsynchronizować mój folder zdalny /home/wolfy/pyz folderem lokalnym /home/cavo/python.

Czy można to zrobić rsync? Czy możesz podać mi przykład?

Odpowiedzi:


18

Spróbuj tego:

rsync -ave 'ssh -p 456' /home/cavo/python/ wolfy@123.123.123.123:/home/wolfy/py/ 

Pamiętaj, że końcowe ukośniki na ścieżkach są bardzo ważne, sygnalizują, że synchronizujesz katalog z katalogiem. -ePrzełącznik pomaga rsyncwiedzieć, że będzie przy użyciu sshtransportu, a jednocześnie jesteśmy określając transportu możemy również powiedzieć co ssh portu to będzie trzeba użyć, aby porozmawiać z odległego miejsca. Następnie nazwa użytkownika i zdalny host ip są określone jako część celu.


działa idealnie :) dzięki za szczegółowe wyjaśnienie!
Wolfy,

1
Końcowy ukośnik jest ważny tylko w źródle, a nie w miejscu docelowym.
enzotib

2
Jestem zdezorientowany, czy ta kopia z lokalnego na zdalny? Według stackoverflow.com/a/9090859/277267 jest na odwrót.
Daniel F

@DanielF Tak to robi. Podejrzewam, że właśnie to OP rozumiał przez jego pytanie. Zwróć uwagę na jego użycie „z” i niekonwencjonalne sformułowanie. Jeśli naprawdę chcesz zsynchronizować zdalny katalog z lokalnym, możesz odwrócić argumenty. Najpierw źródło, a potem cel.
Caleb

@Caleb Tak, ale tytuł mówi „od zdalnego do lokalnego”.
Daniel F

0

Dla tych z nas, którzy lubią pełne rozwiązanie.

sudo rsync --ignore-existing --recursive username@domain:/location/to/files/ files/

Pamiętaj, że zawsze masz przy sobie mężczyznę.

$ man rsync
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.