Ich habe mich hier in anderen Fragen und in verschiedenen Tutorials zur „scp-Nutzung“ im Internet umgesehen, aber ich kann nicht herausfinden, was falsch ist.
Ich verwende 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 ssh mit einem Remote-Rechner , wie:
ssh -p 2222 [email protected]
Es fragt mich nach dem Passwort und die Shell zeigt Folgendes an:
[email protected] ~ $
Wenn ich jetzt den Befehl ausführe (bevor ich ssh ausführte, befand ich mich im lokalen Verzeichnis /home/name/dir ):
scp -r -P 2222 file.ext [email protected]
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 [email protected]
Außerdem sagte mir der Serveradministrator, dass ich die Datei in mein entferntes Home-Verzeichnis (anstelle von root) hochladen soll, wie:
scp -r -P 2222 file.ext [email protected]:~/
aber wenn ich es tue und „Enter“ drücke, passiert nichts, als ob die Shell auf weitere Eingaben warten würde.
Zusammenfassung meiner Probleme:
- cp:keine solche Datei oder Verzeichnis
- Shell „hängt“ auf ~/
Irgendwelche Vorschläge?
Akzeptierte Antwort:
Sie müssen scp
ausführen Befehl von der lokalen Maschine, nicht auf der Fernbedienung. Sie brauchen den ssh
nicht überhaupt:
[email protected] $ scp -P 2222 file.ext [email protected]:~/
Sie brauchen auch nicht das -r
:
-r Recursively copy entire directories.
Wenn Sie bereits am Remote-Rechner angemeldet sind und von Ihrem lokalen Rechner kopieren möchten, müssen Sie sicherstellen, dass Ihr lokaler Rechner über das Internet erreichbar ist und über ssh
verfügt aufstellen. Ich glaube nicht, dass Sie danach suchen, aber wenn ja, führen Sie einfach Folgendes von der Fernbedienung aus:
[email protected] $ scp [email protected]:/path/to/file.ext ~/