In diesem Tutorial zeigen wir Ihnen, wie Sie den Befehl scp unter Linux verwenden. Für diejenigen unter Ihnen, die es nicht wussten, SCP (Secure Copy) ist ein Befehlszeilentool in Linux und Unix-ähnliche Systeme, die zum sicheren Übertragen von Dateien und Verzeichnissen zwischen den Systemen über das Netzwerk verwendet werden. Es verwendet das Secure Shell SFTP-Subsystem für die Datenübertragung, verwendet dieselbe Authentifizierung und bietet dieselbe Sicherheit wie Secure Shell. Scp wird danach fragen Passwörter oder Passphrasen, wenn sie für die Authentifizierung benötigt werden. Standardmäßig ist der SCP-Befehl in Linux und Mac enthalten, sodass Sie mit diesen Betriebssystemen nichts herunterladen müssen.
Dieser Artikel geht davon aus, dass Sie zumindest über Grundkenntnisse in Linux verfügen, wissen, wie man die Shell verwendet, und vor allem, dass Sie Ihre Website auf Ihrem eigenen VPS hosten. Die Installation ist recht einfach und setzt Sie voraus im Root-Konto ausgeführt werden, wenn nicht, müssen Sie möglicherweise 'sudo
hinzufügen ‘ zu den Befehlen, um Root-Rechte zu erhalten. Ich zeige Ihnen Schritt für Schritt die Verwendung von SCP-Befehlen unter Linux mit Übungsbeispielen.
Voraussetzungen
- Ein Server, auf dem eines der folgenden Betriebssysteme ausgeführt wird:Ubuntu-basiert oder RHEL-basiert.
- Es wird empfohlen, dass Sie eine neue Betriebssysteminstallation verwenden, um potenziellen Problemen vorzubeugen.
- SSH-Zugriff auf den Server (oder öffnen Sie einfach das Terminal, wenn Sie sich auf einem Desktop befinden).
- Ein
non-root sudo user
oder Zugriff auf denroot user
. Wir empfehlen, alsnon-root sudo user
zu agieren , da Sie Ihr System beschädigen können, wenn Sie als Root nicht aufpassen.
SCP-Befehl unter Linux verwenden
SCP (Secure Copy) ist ein Befehlszeilenprogramm, mit dem Sie Dateien und Verzeichnisse sicher zwischen zwei Speicherorten kopieren können.
- Grundlegende Syntax des SCP-Befehls.
Standardmäßig arbeitet das SCP-Protokoll auf Port 22
sofern nicht durch eine Befehlszeilenoption überschrieben. Alle scp
Befehle folgen der Form:
[[email protected] ~]# scp [OPTIONEN] [QUELLE] [ZIEL]
- Lokale Dateien an Remote-Ziel übertragen.
Beispiel:Wir laden eine Datei von unserem lokalen Computer an einen entfernten Ort hoch. Mit SCP können wir dies mit einem Befehl wie dem folgenden erreichen:
[[email protected] ~]# scp path/to/local/file.txt user@remote-host:path/to/remote/file.txt
Nachdem Sie diesen obigen Befehl ausgeführt haben, wird eine Eingabeaufforderung das Passwort anzeigen, das dem Benutzerkonto des Remote-Hosts entspricht. Sobald das Passwort eingegeben wurde, wird die Datei kopiert.
- Remote-Datei an ein lokales Ziel übertragen.
Jetzt können wir eine Datei von einem entfernten Computer auf unseren lokalen Rechner kopieren:
[[email protected] ~]# scp user@remote-host:path/to/remote/file.txt path/to/local/file.txt
- Remote-Datei an Remote-Ziel übertragen.
Führen Sie das folgende Befehlsformat aus, um eine Datei zwischen zwei Remote-Hosts zu übertragen:
[[email protected] ~]# scp user1@remote-host1:path/to/remote/file.txt user2@remote-host2:path/to/remote/file.txt
- Verzeichnisse kopieren.
Das -r
Das Flag kann verwendet werden, um einen Ordner und seinen Inhalt statt einer einzelnen Datei rekursiv zu kopieren:
[[email protected] ~]# scp -r path/to/local/my-folder user@remote-host:path/to/remote/my-folder
- Unterdrückter Modus.
Das -q
Flag unterdrückt die Fortschrittsanzeige und Nicht-Fehlermeldungen, damit Ihr Terminal sauber bleibt:
[[email protected] ~]# scp -q path/to/local/file.txt user@remote-host:path/to/remote/file.txt
- Authentifizierungsschlüsselpaardatei.
Das -i
Das Flag kann verwendet werden, um die Verbindung mit einem in einer Datei gespeicherten kryptografischen Schlüsselpaar anstelle von Benutzername und Passwort zu authentifizieren:
[[email protected] ~]# scp -i path/to/local/keypair.pem path/to/local/file.txt user@remote-host:path/to/remote/file.txt
- Mehrere SCP-Optionen verwenden.
Dies ist ein Beispiel, das mehrere Flags implementiert, um einen Ordner von einem Remote-Host auf unseren lokalen Computer zu kopieren, indem eine Schlüsselpaardatei zur Authentifizierung auf Port 999 verwendet wird, während die Dateieigenschaften erhalten bleiben und Ausgabe unterdrücken:
[[email protected] ~]# scp -p -q -P 999 -i path/to/local/keypair.pem -r path/to/local/folder user@remote-host:path/to/ Fernbedienung/Ordner
Herzlichen Glückwunsch! Sie haben erfolgreich gelernt, den SCP-Befehl zu verwenden. Vielen Dank, dass Sie dieses Tutorial verwendet haben. Wir haben das Übertragen von Dateien vom lokalen Host auf einen Remote-Host, von einem Remote-Host auf den Localhost und zwischen ihnen behandelt zwei Remote-Hosts auf einem Linux-System.