Ich versuche, rsync
zwischen zwei Hosts zu wechseln. Der Quellhost hat SSH-Schlüssel im Zielserver und ich habe überprüft, dass er SSH ohne Passwort verwenden kann. Der Zielserver erlaubt SSH über Port 2209.
Wenn ich den folgenden Befehl im Quellhost ausführe, erhalte ich nur eine Eingabeaufforderung mit „ >
by bash“ und es passiert nichts:
rsync -avz -e "ssh -p 2209” /var/www/ root@DESTINATION_IP:/srv/OLD_backup
Habe auch andere Varianten probiert:
rsync -avz -e "ssh -p 2209” root@DESTINATION_IP:/srv/OLD_backup /var/www/
rsync -avz /var/www/ -e "ssh -p 2209” root@DESTINATION_IP:/srv/OLD_backup
Antwort1
Ich habe es herausgefunden. Ich musste einfache Anführungszeichen verwenden, als ich das SSH spezifizierte:
rsync -avz -e 'ssh -p 2209' /var/www/ root@DESTINATION_IP:/srv/OLD_backup
Antwort2
Ihr Befehl enthält eine Mischung aus einfachen ASCII-Anführungszeichen (die Sie in der Befehlszeile haben möchten) und ausgefallenen Unicode-Anführungszeichen (die die Shell nicht erkennt). Insbesondere "ssh -p 2209”
beginnt der Teil mit einem einfachen Anführungszeichen und endet mit einem ausgefallenen Anführungszeichen.