2010-04-26 17:36:01 +0000 2010-04-26 17:36:01 +0000
164
164

Was ist der Unterschied zwischen SCP und SFTP?

Normalerweise verwende ich den Befehl scp, um Dateien auf *nixes zu übertragen.

Was ist der Unterschied zwischen SFTP und SCP? Funktionieren sie nicht beide mit SSH?

Antworten (5)

105
105
105
2010-04-26 19:36:45 +0000

Aus Wikipedia :

Im Vergleich zum früheren SCP-Protokoll, das nur Dateiübertragungen zulässt, erlaubt das SFTP-Protokoll eine Reihe von Operationen an entfernten Dateien - es ist eher ein Protokoll für entfernte Dateisysteme. Zu den zusätzlichen Fähigkeiten eines SFTP-Clients im Vergleich zu einem SCP-Client gehören die Wiederaufnahme unterbrochener Übertragungen, das Auflisten von Verzeichnissen und das Entfernen von entfernten Dateien. 1] Aus diesen Gründen ist es relativ einfach, einen GUI-SFTP-Client im Vergleich zu einem GUI-SCP-Client zu implementieren.

und

Obwohl sowohl SCP als auch SFTP die gleiche SSH-Verschlüsselung während der Dateiübertragung mit dem gleichen allgemeinen Overhead verwenden, ist SCP in der Regel viel schneller als SFTP bei der Übertragung von Dateien, insbesondere in Netzwerken mit hoher Latenz. Dies liegt daran, dass SCP einen effizienteren Übertragungsalgorithmus implementiert, bei dem nicht auf Paketbestätigungen gewartet werden muss. Dies führt zu einer höheren Geschwindigkeit, hat aber den Nachteil, dass eine Übertragung nicht unterbrochen werden kann. Im Gegensatz zu SFTP kann eine SCP-Übertragung nicht abgebrochen werden, ohne die Sitzung zu beenden.

100
100
100
2010-04-26 18:10:26 +0000

Kurz gesagt, SCP kann nur zum Übertragen von Dateien verwendet werden und ist nicht interaktiv (d. h., alles muss auf der Befehlszeile angegeben werden). SFTP ist aufwändiger und erlaubt interaktive Befehle, um Dinge wie das Erstellen von Verzeichnissen, das Löschen von Verzeichnissen und Dateien (alles natürlich abhängig von den Systemrechten) usw. zu tun.

9
9
9
2016-01-20 11:04:11 +0000

Aus einer reinen Kommandozeilenperspektive : - scp hat keinen interaktiven Modus und kann auch keine Befehlsskripte lesen, d.h. alles muss auf der Kommandozeile geschrieben werden. - sftp hat einen interaktiven Modus und kann Befehle aus einer Datei lesen.

Ein weiterer wichtiger Unterschied zwischen den beiden Befehlen ist, dass sftp eine lokale Datei nicht mit einer einzigen Befehlszeile an einen entfernten Speicherort übertragen kann, obwohl es eine entfernte Datei abrufen kann, während scp beides kann.

sftp get remote file

sftp user@host:/path/to/remote.file [/path/to/local.file]

scp get remote file

scp user@host:/path/to/remote.file [/path/to/local.file]

scp put remote file

scp /path/to/local.file user@host:[/path/to/remote.file]
3
3
3
2016-05-25 03:52:12 +0000

SSH ( S ecure SH ell) ist ein kryptografisches Netzwerkprotokoll, mit dem Remote-Login und andere Netzwerkdienste sicher über ein ungesichertes Netzwerk betrieben werden können.

Unterschiede: SFTP arbeitet im interaktiven Modus (Sitzung) und SCP arbeitet im nicht-interaktiven Modus. Mit SFTP können wir auf das entfernte Dateisystem zugreifen, d. h. Dateien erstellen, löschen und auflisten.

Ähnlichkeiten: Sowohl SCP ( S ecure C opy P rotocol) als auch SFTP ( S SH F ile T ransfer P rotocol) sind Netzwerkprotokolle, die die Dateiverwaltung zwischen Hosts in einem Netzwerk unterstützen. Beide verwenden SSH. mehr

2
2
2
2017-08-13 19:46:17 +0000

Die meisten Unterschiede der beiden Protokolle wurden bereits in anderen Antworten genannt, und ausführlicher in https://unix.stackexchange.com/q/8707/19088

Ein weiterer Unterschied ist, laut der Dokumentation von curl , dass das SCP-Protokoll nicht sehr portabel ist und normalerweise nur zwischen Unix-Systemen funktioniert.

Übrigens implementiert curl beide Protokolle und im Gegensatz zur Standard-Implementierung des OpenSSH-SFTP-Clients ist es nicht-interaktiv sowohl für SFTP als auch für SCP.

Und beachten Sie, dass es auch das FISH -Protokoll gibt, mit dem Sie Dateien über SSH übertragen können, ohne SCP oder SFTP zu benötigen. Soweit ich weiß, ist FISH nicht sehr populär, derzeit nur in einigen wenigen Dateimanagern Midnight Commander und einigen, die auf KDE basieren) und Lftp implementiert.