Das Übertragen von Dateien über eine direkte Verbindung zwischen Server-A und Server-B ist die bevorzugte Methode. Dies ist, was scp
versucht zu tun. Der relevante Teil von man 1 scp
:
-3
Kopien zwischen zwei Remote-Hosts werden über den lokalen Host übertragen. Ohne diese Option werden die Daten direkt zwischen den beiden Remote-Hosts kopiert. Beachten Sie, dass diese Option die Fortschrittsanzeige deaktiviert.
Du hast recht, dass ohne die -3
Option "Server-A versucht, sich mit Server-B zu verbinden". Meine Tests zeigen, dass selbst wenn Server-B eine kennwortbasierte Authentifizierung zulässt, die Interaktion mit tty (während das Kennwort abgefragt wird) höchstwahrscheinlich das Problem ist. In diesem Fall erscheint dieser Kommentar nützlich:
ssh
Starten Siescp
auf Server A den Server A (ein Befehl). Vermeidet das zweimalige Kopieren der Dateien.
Nachdem Sie explizit ssh
in server-A scp
gestartet wurden, sollte es bei der Abfrage des Kennworts für server-B kein Problem mit tty haben. Alternativ können Sie ssh
in Server-B und dort aufrufen scp
.
Wenn dies nicht möglich ist (Schlüssel erforderlich, Kennwort nicht zulässig), verwenden Sie es scp -3
auf Ihrer Workstation. Offensichtlich wird dies Ihren lokalen Computer als eine Art Proxy verwenden, so dass die Daten herunterfließen und ihre Netzwerkverbindung (en) aufbauen.
Es werden jedoch nicht alle scp
Implementierungen unterstützt -3
.