Ich versuche, lokale Dateien mithilfe von Putty oder SSH auf den Server hochzuladen, werde dort jedoch nicht hochgeladen.
Gibt es eine direkte Methode, um Dateien vom Linux-Terminal vom lokalen zum Server hochzuladen, ohne FTP usw. zu verwenden?
Ich versuche, lokale Dateien mithilfe von Putty oder SSH auf den Server hochzuladen, werde dort jedoch nicht hochgeladen.
Gibt es eine direkte Methode, um Dateien vom Linux-Terminal vom lokalen zum Server hochzuladen, ohne FTP usw. zu verwenden?
Antworten:
Sicher. Verwenden Sie scp
(sichere Kopie) wie folgt:
scp [source file] [username]@[destination server]:.
Natürlich ersetzen die eingeklammert [source file]
, [username]
und die [destination server]
lokalen Einstellungen anzupassen. Wenn also die Datei cool_stuff.txt
und Ihr Benutzername auf dem Remote-Server sanjeev
und der Ziel-Server example.com
lauten, lautet der Befehl:
scp cool_stuff.txt sanjeev@example.com:.
Die Quelle könnte auch remote sein, so dass Sie das Gegenteil des obigen Beispiels erreichen können:
scp sanjeev@example.com:cool_stuff.txt .
Dieser Befehl kopiert die entfernte Datei cool_stuff.txt
in das lokale Verzeichnis, in dem Sie sich befinden. Wenn Sie dies mit mehreren Dateien tun, verwenden Sie einfach einen Platzhalter ( *
) wie bei einem normalen cp
Befehl.
Außerdem gibt das .
nur den direkten Verzeichnispfad an. B. derjenige, in dem Sie sich gerade befinden, als Sie den Befehl ausführen, oder der unmittelbare Pfad, über den der Remotebenutzer auf dem Zielserver verfügt. Sie können aber auch einen Pfad wie /this/path/right/here
im Beispiel "Lokal zu Remote" angeben :
scp cool_stuff.txt sanjeev@example.com:/this/path/right/here
Oder das Remote-to-Local-Beispiel hier:
scp sanjeev@example.com:cool_stuff.txt /this/path/right/here
Wenn der Remote-Server nun kein SSH und nur SFTP zulässt, ist SFTP der richtige Weg. Dies scp
ist jedoch sehr nützlich, wenn Sie nur eine Datei werfen und nicht den gesamten SFTP-Prozess manuell über die Befehlszeile ausführen möchten.
Wenn die Anmeldung beim Remote-Server über den SSH- Schlüssel erfolgt, können wir das unten stehende -i
Flag verwenden, um unseren Schlüssel an den Server zu übergeben:
scp -i /path/to/.ssh/id_rsa path/to/file/myFiles.gz myServer.com:/folder/on/server
-i identitätsdatei
Wählt die Datei aus, aus der die Identität (privater Schlüssel) für die Authentifizierung mit öffentlichem Schlüssel gelesen wird.
Diese Option wird direkt an ssh (1) übergeben.
Um die Antwort von Jake zu ergänzen , können Sie einen Ort angeben .
, an den kopiert werden soll, indem Sie den Pfad am Ende der URL wie folgt einfügen:
scp /path/to/file username@servername/ip:/destination/folder/