GNU/Linux >> LINUX-Kenntnisse >  >> Linux

SCP-Befehl in Linux:Verwendung mit Beispielen

Mit dem SCP-Befehl in Linux können Sie Dateien über SSH-Verbindungen kopieren. Das ist ziemlich nützlich, wenn Sie Dateien zwischen Computern transportieren möchten.

Inhaltsverzeichnis

  • SCP-Befehlssyntax
  • Verwendung des SCP-Befehls unter Linux
    • Lokale Datei auf Remote-Server übertragen
    • Datei vom Remote-Server auf den lokalen Computer übertragen
    • Lokales Verzeichnis rekursiv auf Remote-Server übertragen
    • Verzeichnis rekursiv vom Remote-Server zum lokalen übertragen
    • Mehrere Dateien auf Remote-Server übertragen
    • Erhöhen Sie die Übertragungsgeschwindigkeit, indem Sie die Komprimierung aktivieren
    • Anderen SSH-Port angeben
    • Erhält Berechtigungen, Modi und Zugriffszeit von Dateien
    • Datei identifizieren im SCP-Befehl verwenden
  • Schlussfolgerung

Das scp Der Befehl (Secure Copy) verwendet SSH, um Daten von einem Host auf einen anderen zu übertragen, und verwendet die gleiche Authentifizierung und Sicherheit von SSH. Der Befehl ist jedoch für die Datenübertragung auf SSH angewiesen und erfordert einen SSH-Schlüssel oder ein Kennwort, um sich auf den Remote-Systemen zu authentifizieren.

Beim Übertragen von Daten mit scp , werden sowohl die Dateien als auch das Passwort verschlüsselt, sodass jeder, der den Datenverkehr ausspioniert, nichts Sensibles erfährt. Dies ist also eine der sichersten Möglichkeiten, Daten in einem Netzwerk zu übertragen.

Das scp Der Befehl unter Linux kann auf drei Arten verwendet werden:

  • Um von einem entfernten Server auf einen lokalen Rechner zu kopieren.
  • Auch zum Kopieren von einem lokalen Rechner auf einen entfernten Server.
  • Um von einem Remote-Server auf einen anderen Remote-Server zu kopieren.

SCP-Befehlssyntax

Die Syntax für scp Befehl ist:

scp [OPTION] [[email protected]]SRC_HOST:]file1 [[email protected]]DEST_HOST:]file2

Einige der am häufigsten verwendeten scp Zu den Befehlsoptionen gehören:

  • -P :Server-SSH-Port angeben
  • -p :Behält Berechtigungen, Modi und Zugriffszeit von Dateien bei (beachten Sie die Kleinschreibung)
  • -q :Stiller Modus, Fortschritt oder Meldungen nicht anzeigen
  • -C :Daten während der Übertragung komprimieren
  • -r :Rekursiv – schließt Unterverzeichnisse und deren Inhalt ein
  • -i :Identitätsdatei oder privater Schlüssel

Verwendung des SCP-Befehls unter Linux

Lokale Datei auf Remote-Server übertragen

Kopieren Sie file.txt vom aktuellen Verzeichnis des lokalen Systems zum /tmp des Remote-Servers Verzeichnis.

scp file.txt [email protected]:/tmp/

Datei vom Remote-Server auf den lokalen Computer übertragen

Der folgende Befehl kopiert /tmp/file.txt vom Remote-Server auf den lokalen Computer im Home-Verzeichnis des Benutzers.

scp [email protected]:/tmp/file.txt /home/user

Lokales Verzeichnis rekursiv auf Remote-Server übertragen

Sie können das -r verwenden Option im scp Befehl in Linux, um das gesamte Verzeichnis rekursiv von einem System auf ein anderes zu kopieren.

Der folgende Befehl kopiert /home/user/myfiles Verzeichnis vom lokalen Rechner zum /tmp des Remote-Servers Verzeichnis.

scp -r /home/user/myfiles [email protected]:/tmp/

Verzeichnis rekursiv vom Remote-Server zum lokalen übertragen

Der folgende Befehl kopiert /tmp/serverfiles Verzeichnis vom Remote-Server auf den lokalen Computer unter dem Home-Verzeichnis des Benutzers rekursiv.

scp -r [email protected]:/tmp/serverfiles /home/user

Mehrere Dateien auf Remote-Server übertragen

Im folgenden Beispiel sind die Dateien file1.txt und file2.txt vom Quellhost werden in /tmp des Remote-Servers kopiert Verzeichnis.

scp file1.txt file2.txt [email protected]:/tmp/

Erhöhen Sie die Übertragungsgeschwindigkeit durch Aktivieren der Komprimierung

Sie können die Übertragungsgeschwindigkeit erhöhen, indem Sie die Komprimierung mit -C aktivieren Möglichkeit. Es erlaubt automatisch die Komprimierung an der Quelle und die Dekomprimierung am Zielhost.

Der folgende Befehl kopiert /home/user/myfiles Verzeichnis vom lokalen Rechner zum /tmp des Remote-Servers Verzeichnis rekursiv mit aktivierter Komprimierung.

scp -r -C /home/user/myfiles [email protected]:/tmp/

Anderen SSH-Port angeben

Es kann Fälle geben, in denen der SSH-Port auf dem Zielhost geändert wird. Wenn Sie also den scp-Befehl unter Linux verwenden, können Sie die SSH-Portnummer mit -P angeben Option.

Der folgende Befehl kopiert file.txt vom aktuellen Verzeichnis des lokalen Systems zum /tmp des Remote-Servers Verzeichnis über Port 2222.

scp -P 2222 file.txt [email protected]:/tmp/

Erhält Berechtigungen, Modi und Zugriffszeit von Dateien

Verwenden Sie das -p Option im scp Befehl zum Beibehalten von Berechtigungen, Zugriffszeit und Modi beim Kopieren von Dateien.

Der folgende Befehl kopiert file.txt vom aktuellen Verzeichnis des lokalen Systems zum /tmp des Remote-Servers Verzeichnis und behält seine Eigenschaften.

scp -p file.txt [email protected]:/tmp/

Datei im SCP-Befehl identifizieren

Bei Verwendung eines SSH-Schlüssels anstelle eines Passworts während der SSH-Sitzung wird der -i Flag ermöglicht Ihnen die Auswahl der Datei, aus der die Identität (privater Schlüssel) für die Public-Key-Authentifizierung gelesen wird.

Der folgende Befehl kopiert file.txt vom aktuellen Verzeichnis des lokalen Systems zum /tmp des Remote-Servers Verzeichnis mit my_second_indent.pem private Schlüsseldatei.

scp -i my_second_indent.pem file.txt [email protected]:/tmp/

Schlussfolgerung

In dieser Anleitung haben Sie gelernt, wie Sie scp verwenden Befehl unter Linux zum Kopieren von Dateien und Verzeichnissen. Dies ist besonders nützlich als Ersatz für FTP, das standardmäßig von Natur aus unsicher ist.

Sie können auch eine SSH-Schlüssel-basierte Authentifizierung einrichten und sich mit Ihren Linux-Servern verbinden, ohne ein Passwort einzugeben.

Weitere Informationen zu scp Befehl unter Linux finden Sie auf der Handbuchseite.


Linux
  1. So verwenden Sie den Linux-Rsync-Befehl (Remote-Synchronisierung).

  2. Verwendung des Linux-Hexdump-Befehls mit praktischen Beispielen

  3. So verwenden Sie den Sed-Befehl unter Linux mit Beispielen

  4. So verwenden Sie den Rmmod-Befehl unter Linux mit Beispielen

  5. So verwenden Sie den Dig-Befehl unter Linux mit Beispielen

So verwenden Sie den who-Befehl in Linux mit Beispielen

Linux-Alias-Befehl:Verwendung mit Beispielen

So verwenden Sie den Grep-Befehl unter Linux + Nützliche Grep-Beispiele

So verwenden Sie den Gunzip-Befehl unter Linux mit Beispielen

So verwenden Sie den Linux-rm-Befehl mit Beispielen

So verwenden Sie den Sleep-Befehl unter Linux:Erklärt mit Beispielen