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.txtund Ihr Benutzername auf dem Remote-Server sanjeevund der Ziel-Server example.comlauten, 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.txtin das lokale Verzeichnis, in dem Sie sich befinden. Wenn Sie dies mit mehreren Dateien tun, verwenden Sie einfach einen Platzhalter ( *) wie bei einem normalen cpBefehl.
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/hereim 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 scpist 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 -iFlag 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/