Dateien von einem Remote-Server auf den lokalen PC herunterladen mit SCP
Das SCP-Tool (Secure Copy Protocol) ist eine der einfachsten und sichersten Methoden, um Dateien über das Netzwerk zwischen zwei Rechnern zu übertragen. Da es auf SSH basiert, werden alle Daten verschlüsselt übertragen.
In diesem Tutorial erfährst du Schritt für Schritt, wie du Dateien oder ganze Ordner von einem entfernten Server (Remote) auf deinen lokalen Computer herunterlädst.
Wichtige Grundregel vorab
Führe den SCP-Befehl immer im Terminal deines LOKALEN Computers aus, nicht auf dem Server! Du sitzt an deinem PC und "ziehst" die Datei vom Server zu dir.
Voraussetzungen
- Ein lokales Terminal (Linux Terminal, macOS Terminal oder Windows PowerShell).
- SSH-Zugriff auf den Remote-Server (Benutzername, Passwort oder SSH-Key, Server-IP-Adresse).
- Die Pfadangabe der Datei auf dem Server.
Die grundlegende Syntax
Der grundlegende Aufbau des Befehls lautet:
scp [OPTIONEN] benutzer@server-ip:/pfad/zur/remote-datei /lokaler/zielpfad
1. Eine einzelne Datei herunterladen
Um eine bestimmte Datei vom Server auf deinen lokalen Computer zu kopieren:
Befehl:
scp benutzer@192.168.1.50:/var/www/mein-projekt/backup.zip ~/Downloads/
Erklärung:
benutzer: Dein SSH-Benutzername auf dem Server.192.168.1.50: Die IP-Adresse (oder Domain) deines Servers.:/var/www/mein-projekt/backup.zip: Der absolute Pfad zur Datei auf dem Server (getrennt durch einen Doppelpunkt).~/Downloads/: Der Ordner auf deinem lokalen PC, in dem die Datei gespeichert werden soll.
Tipp: Wenn du die Datei direkt in das Verzeichnis herunterladen möchtest, in dem du dich gerade im lokalen Terminal befindest, nutze einfach einen Punkt (.):
scp benutzer@192.168.1.50:/var/www/mein-projekt/backup.zip .
2. Einen kompletten Ordner herunterladen (Rekursiv)
Möchtest du ein ganzes Verzeichnis inklusive aller Unterordner und Dateien herunterladen, benötigst du den Parameter -r (rekursiv).
Befehl:
scp -r benutzer@192.168.1.50:/var/www/mein-projekt/bilder ~/Desktop/
Dadurch wird der gesamte Ordner bilder auf deinen lokalen Schreibtisch kopiert.
3. Häufige Spezialfälle
Fall A: Der Server nutzt einen abweichenden SSH-Port
Standardmäßig läuft SSH/SCP über Port 22. Verwendet dein Server aus Sicherheitsgründen einen anderen Port (z. B. 2222), musst du den Parameter -P verwenden.
(Achtung: Großes P, im Gegensatz zum kleinen p bei normalem SSH!)
scp -P 2222 benutzer@192.168.1.50:/var/www/datei.txt ~/Downloads/
Fall B: Authentifizierung über einen SSH-Schlüssel (Private Key)
Wenn du für den Server keinen Passwort-Login, sondern einen SSH-Key nutzt, gibst du diesen mit dem Parameter -i an:
scp -i ~/.ssh/id_rsa benutzer@192.168.1.50:/var/www/datei.txt ~/Downloads/
Fall C: Fortschrittsanzeige und Geschwindigkeit
Wenn du eine sehr große Datei herunterlädst, kannst du mit -C die Übertragung komprimieren, was bei langsamen Internetleitungen hilft:
scp -C benutzer@192.168.1.50:/grosses-archiv.tar ~/Downloads/
Typische Fehlerquellen
- Permission denied (publickey/password):
- Überprüfe deinen Benutzernamen und dein Passwort oder den Pfad zu deinem SSH-Key.
- No such file or directory:
- Der Pfad auf dem Server existiert nicht oder du hast dich vertippt. Verwende am besten immer absolute Pfade (beginnend mit
/).
- Der Pfad auf dem Server existiert nicht oder du hast dich vertippt. Verwende am besten immer absolute Pfade (beginnend mit
- Befehl hängt / Timeout:
- Der Port ist möglicherweise durch eine Firewall blockiert, oder die IP-Adresse des Servers stimmt nicht.