Startseite > Netzwerkverwaltung > scp

Vollständige Beherrschung des scp-Befehls

Dies ist ein Leitfaden für den `scp`-Befehl, mit dem Sie Dateien sicher zwischen lokalen und Remote-Hosts mithilfe des Secure Copy Protocol (SCP) in Linux kopieren können. Mit diesem Werkzeug können Sie Dateiübertragungen über das Netzwerk einfach und sicher durchführen.

Hauptoptionen

Kombinieren Sie die verschiedenen Optionen des `scp`-Befehls, um Dateiübertragungsaufgaben einzurichten.

1. Grundübertragung

2. Übertragungsoptionen

Erzeugter Befehl:

Kombinieren Sie die Befehle.

Beschreibung:

`scp` Führen Sie den Befehl aus.

Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.

Verstehen von Syntax und Pfaden

Der `scp`-Befehl verwendet zwei Hauptargumente: 'Quell' und 'Ziel', die lokale oder Remote-Pfade sein können. Remote-Pfade werden im Format `[user@]host:path` angegeben.

SCP-Syntax

`scp [Optionen] [Quelle] [Ziel]` - **Quelle**: Die Quelldatei oder das -verzeichnis, das kopiert werden soll. - **Ziel**: Die Zieldatei oder das -verzeichnis, in das die Datei kopiert werden soll.

Pfadangabe

Wie man lokale und remote Pfade unterscheidet und angibt.

  • Lokaler Pfad: Allgemeiner Dateisystempfad (z.B. `/home/user/document.txt` oder `.`)
  • Remote-Pfad: `[Benutzername@]Hostname_oder_IP-Adresse:/remote/path` Format (z.B. `user@example.com:/var/www/html/`)

Authentifizierung und Sicherheit

`scp` basiert auf dem SSH-Protokoll, sodass die Dateiübertragung verschlüsselt und sicher ist. Um auf den Remote-Host zuzugreifen, ist wie bei SSH eine Authentifizierung mit Benutzername/Passwort oder SSH-Schlüssel erforderlich.

Verwendungsbeispiele

Üben Sie Dateiübertragungsaufgaben anhand praktischer Beispiele für den `scp`-Befehl.

Lokale Datei auf den Remote-Server kopieren

scp report.txt user@myserver.com:/home/user/

Kopiert die Datei `report.txt` im aktuellen Verzeichnis auf das Verzeichnis `/home/user/` des Remote-Servers `myserver.com`.

Datei vom Remote-Server lokal kopieren

scp user@myserver.com:/var/log/syslog .

Kopiert die Datei `/var/log/syslog` des Remote-Servers `myserver.com` in das aktuelle lokale Verzeichnis (`.`).

Lokales Verzeichnis rekursiv auf den Remote-Server kopieren

scp -r my_project user@myserver.com:/var/www/

Kopiert das gesamte Verzeichnis `my_project` im aktuellen Verzeichnis in das Verzeichnis `/var/www/` des Remote-Servers `myserver.com`.

Datei unter Verwendung eines bestimmten Ports kopieren

scp -P 2222 backup.tar.gz user@myserver.com:/backups/

Kopiert die Datei `backup.tar.gz` auf den Remote-Server mit dem SSH-Port 2222.

Datei mit Authentifizierungsschlüssel kopieren

scp -i ~/.ssh/my_key data.sql user@myserver.com:/db_dumps/

Kopiert die Datei `data.sql` auf den Remote-Server unter Verwendung des angegebenen SSH-Privatschlüssels (`~/.ssh/my_key`).


Gleiche Kategorie Befehle