Próbowałem:
rsync -v -v -e 'ssh -p YY' ./testfile me@XXXXX:/home
Komunikat o błędzie
opening connection using: ssh -p YY -l me 146.6.84.206 rsync ->-server -vvve.s . /home
[sender] make_file(testfile,*,0)
send_file_list done
send_files starting
server_recv(2) starting pid=17537
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(600)[sender=3.0.6]
_exit_cleanup(code=12, file=io.c, line=600): about to call exit(12)
Działa to dobrze:
ssh -p YY me@XXXXX
Co sugeruje mi, że problemem jest to, że sshd
nie jest uruchomiony, ani że port YY jest zaporowy. Zresztą sprawdziłem.
Jakie mogą być inne problemy?
EDYCJA: Wydaje się, że problem polegał na „samodzielnym rozwiązaniu”. Nie mogłem powielić następnego dnia. Uruchomiłem komputer lokalny. Być może w szczególności miałem inny adres IP niż poprzednio. A teraz rsync działa magicznie. Byłbym wdzięczny za domysły na temat tego, co mogło być w świetle tego, że odchodzi.
/home
zdalnym serwerze?Odpowiedzi:
Ten błąd można również uzyskać, jeśli określisz zdalną ścieżkę, która nie istnieje.
Mam ten błąd w systemie OS X:
Okazało się, że po prostu źle wpisałem ścieżkę docelową.
apps
Reż nie istnieje. Kiedy zmienił się żestatic:sites/myapp.com
zamiast (thesites
dir nie istnieje), błąd odszedł.W porządku, jeśli końcowy katalog na ścieżce nie istnieje (mógłbym to zrobić
static:sites/mynewapp.com
), ale wygląda na to, że poprzedni katalog musi już istnieć.źródło
Wystąpił ten błąd, gdy
rsync
nie został zainstalowany na hoście docelowym. Komunikat o błędzie w moim przypadku również powiedziałrsync: command not found
. Prostyna hoście docelowym rozwiązał problem.
źródło
Czy twój skrypt logowania na odległym końcu produkuje śmieci na standardowym wyjściu? Sprawdź to za pomocą
Jeśli
out.txt
zawiera dane, zidentyfikuj obrażające wypowiedzi w swoim.profile
lub.bashrc
i zawiń jeźródło
Może być konieczne podanie pełnej ścieżki do pliku binarnego ssh, tj
Chociaż istnieją inne możliwe przyczyny.
źródło
Ten błąd może się również zdarzyć, jeśli ścieżka do rsync w systemie zdalnym nie jest taka, jak zakłada system lokalny. Możesz zobaczyć, co się dzieje, podając opcję -vv (lub nawet więcej vs). Jeśli to jest problem, możesz określić ścieżkę zdalną do rsync za pomocą opcji --rsync-path.
źródło
Widziałem ten błąd:
...
Byłem w stanie ssh na zdalnym hoście i stwierdziłem, że brakuje miejsca na dysku.
źródło