Ich habe mich hier bei anderen Fragen und in verschiedenen Tutorials zur "scp usage" im Internet umgesehen, aber ich kann nicht herausfinden, was los ist.
Ich benutze Linux Mint und versuche herauszufinden, wie scp funktioniert.
Ich habe eine Datei file.ext (auf meinem Computer) im Verzeichnis / home / name / dir /
Ich verbinde mich mit einer entfernten Maschine mit ssh , wie:
ssh -p 2222 username@domain
es fragt mich nach dem Passwort und die Shell zeigt an:
username@domain ~ $
Wenn ich jetzt den Befehl gebe (bevor ich ssh ausgeführt habe, befand ich mich im lokalen Verzeichnis / home / name / dir ):
scp -r -P 2222 file.ext username@domain
Ausgabe ist:
cp: cannot stat ‘file.ext’: No such file or directory
Gleiches Ergebnis, wenn ich anstelle von file.ext den vollständigen Pfad schreibe
scp -r -P 2222 /home/name/dir/file.ext username@domain
Der Serveradministrator teilte mir außerdem mit, dass ich die Datei in mein Remote-Ausgangsverzeichnis (anstelle von root) hochladen soll. Beispiel:
scp -r -P 2222 file.ext username@domain:~/
aber wenn ich es tue und "Enter" drücke, passiert nichts, als ob die Shell auf weitere Eingaben gewartet hätte.
Zusammenfassung meiner Probleme:
- cp: keine solche Datei oder Verzeichnis
- Shell "stecken" auf ~ /
Irgendwelche Vorschläge?
scp
muss die entfernte Seite immer den Doppelpunkt enthalten (z. B. remotehost:/tmp
), sonst wird nur eine normale Kopie erstellt ( scp /tmp/foo.txt example.com
wird /tmp/foo.txt
in eine lokale Datei example.com
-r
Flag, da dies nicht zum Kopieren einzelner Dateien benötigt wird (es wird zum rekursiven Kopieren von Verzeichnissen verwendet)
localuser@machineA: ssh -p 2222 username@domain
(um anzuzeigen, dass Sie den Befehl ssh als localuser auf machineA ausführen)