Linux-Dateitransfer-Tools: CLI- und browserbasierte Optionen
Entdecken Sie die besten Linux-Dateitransfer-Tools. Von Kommandozeilen-Utilities bis zu Browser-Diensten für Dateiübertragung.
Unter Linux hängt das beste Dateiübertragungswerkzeug davon ab, ob Dateien zwischen eigenen Maschinen verschoben werden (rsync, scp, sftp) oder an jemanden außerhalb des eigenen Einflussbereichs gesendet werden (browserbasierte Dienste wie HexaTransfer). Für Server-zu-Server-Massenübertragungen ist rsync -avP --partial das Arbeitspferd. Für Ad-hoc-Lieferungen an nicht-technische Empfänger schlägt eine URL aus einem browserbasierten Dienst die Bitte, einen SSH-Client zu installieren. Linux-Desktop-Umgebungen (GNOME, KDE) unterstützen SMB, WebDAV und SFTP-Browsing nativ über den Dateimanager.
Die klassischen CLI-Werkzeuge
scp — sicheres Kopieren über SSH. Simpel:
scp grosse-datei.tar.gz benutzer@server:/home/benutzer/
scp -r ordner/ benutzer@server:/pfad/
Keine Fortsetzung bei Fehler. Gut für zuverlässige Netzwerke, lästig bei instabilen Verbindungen. OpenSSH 9.0 (2022) wechselte das Standardprotokoll von SCP-über-SSH zu SFTP — das Verhalten ist ähnlich, aber Randfälle unterscheiden sich.
rsync — inkrementelle Synchronisation mit Fortsetzung:
rsync -avP --partial quelle/ benutzer@server:/ziel/
Flags: -a Archiv-Modus (bewahrt Rechte, Zeitstempel, Symlinks), -v ausführlich, -P Fortschritt + --partial (behält unvollständige Datei bei Fehler). --bwlimit=50000 begrenzt die Bandbreite auf 50 MB/s bei gemeinsam genutzter Verbindung.
Bei identischen Quell- und Zielstrukturen überträgt rsync bei nachfolgenden Läufen nur geänderte Bytes — enorme Zeitersparnis bei wiederholten Übertragungen.
sftp — interaktiver SSH-basierter Dateitransfer. Wie ein alter FTP-Client:
sftp benutzer@server
> put grosse-datei.tar.gz
> get irgendeine-datei.txt
rclone — wie rsync, aber für Cloud-Anbieter. Unterstützt S3, Google Drive, Dropbox, OneDrive, Backblaze B2 und Dutzende weitere. Hervorragend für geskriptete Uploads zu Objektspeicher:
rclone copy lokaler/ordner remote:bucket/pfad -P
Browserbasierte Optionen für nicht-technische Empfänger
Nicht jeder Dateiempfänger hat SSH-Schlüssel. Für das Senden an Journalisten, Kunden oder Familienmitglieder funktioniert eine Übertragungs-URL:
| Dienst | Max. kostenlos | Verschlüsselung | Linux-tauglich | |---|---|---|---| | HexaTransfer | 10 GB | Ende-zu-Ende AES-256-GCM | Ja (beliebiger Browser) | | WeTransfer | 2 GB | TLS | Ja | | SwissTransfer | 50 GB | TLS | Ja | | Proton Drive Share | 1 GB | Ende-zu-Ende | Ja | | Tresorit Send | 5 GB | Ende-zu-Ende | Ja |
Firefox und Chromium unter Linux verarbeiten große Uploads kompetent. Die Upload-Performance entspricht typischerweise der Hardware und dem Uplink, nicht dem Browser.
Netzwerkbasierte Tools vom Desktop
GNOME Files (Nautilus): Mit Server verbinden > smb://, sftp://, ftp://, dav://. Bindet das Remote-System wie ein lokales Verzeichnis ein. Gut für gelegentliches Browsen.
KDE Dolphin: gleiche Funktionalität, leicht andere Benutzeroberfläche. Unterstützt dieselben Protokolle.
smbclient — Kommandozeilen-SMB für Skripte:
smbclient //server/freigabe -U benutzer
sshfs — Remote-Dateisystem über SSH einbinden:
sshfs benutzer@server:/remote/pfad ~/mnt/remote
Nützlich, wenn eine App einen lokalen Pfad erwartet.
Übertragungsgeschwindigkeit unter Linux optimieren
Linuxs Standard-TCP-Fensterskalierung verarbeitet Hochbandbreiten-Übertragungen gut, aber einige Distributionen werden mit konservativen Einstellungen ausgeliefert. Für Übertragungen über Verbindungen mit langer Distanz (hohe Latenz, hohe Bandbreite):
sysctl -w net.core.rmem_max=16777216
sysctl -w net.core.wmem_max=16777216
sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216"
sysctl -w net.ipv4.tcp_wmem="4096 65536 16777216"
BBR-Staukontrolle für besseren Durchsatz auf verlustbehafteten Verbindungen aktivieren:
sysctl -w net.ipv4.tcp_congestion_control=bbr
Diese Einstellungen sind in normalen Heimnetzwerken nicht nötig — aber beim Datentransfer zwischen Rechenzentren oder über Kontinente kann der Unterschied zwischen Standard-CUBIC und BBR das 2- bis 3-Fache ausmachen.
Archivierung: tar-Varianten
tar -czf archiv.tar.gz ordner/ # gzip, schnell, mäßige Komprimierung
tar -cjf archiv.tar.bz2 ordner/ # bzip2, langsamer, bessere Komprimierung
tar -cJf archiv.tar.xz ordner/ # xz, am langsamsten, beste Komprimierung
tar --use-compress-program=zstd -cf archiv.tar.zst ordner/ # zstd, schnell und gut
Für modernes Linux schlägt zstd gzip sowohl in Geschwindigkeit als auch im Kompressionsverhältnis. Für Nicht-Linux-Empfänger bei .zip bleiben — mit zip -r archiv.zip ordner/ erstellen.
Ein riesiges Archiv in Teile aufteilen:
tar -czf - ordner/ | split -b 2G - archiv.tar.gz.teil_
Zusammenführen mit cat archiv.tar.gz.teil_* | tar -xzf -.
Objektspeicher als Übertragungsmedium
Für Workloads, die viele oder sehr große Dateien erzeugen, ist ein Cloud-Bucket als Übertragungsschicht sauberer als ein einmaliger Dienst:
AWS S3: aws s3 cp datei s3://bucket/pfad und dann eine vorübergehende URL mit aws s3 presign s3://bucket/pfad --expires-in 3600 generieren. Der Empfänger erhält einen zeitlich befristeten direkten Download.
Cloudflare R2: S3-kompatible API, keine Egress-Gebühren. Dieselbe aws-CLI mit benutzerdefiniertem Endpunkt verwenden.
Backblaze B2: b2 upload-file bucket datei schluessel dann b2 get-download-url-with-auth bucket schluessel 3600.
MinIO: Selbst gehosteter S3-kompatibler Server, vorübergehende URLs von der eigenen Domain ausstellen.
Für Entwickler, die Build-Artefakte, Logs oder Dumps senden, sind diese besser als ein Allzweck-Übertragungsdienst.
Ad-hoc-HTTP-Server
Für schnelle Übertragungen im selben LAN:
python3 -m http.server 8000
Stellt das aktuelle Verzeichnis unter http://eigene-ip:8000/ bereit. Der Empfänger ruft die URL auf und lädt herunter. Nützlich zwischen Laptop und VM oder Smartphone im selben WLAN. Nicht verschlüsselt — für intern in Ordnung, nicht für extern.
Für HTTPS mit selbstsigniertem Zertifikat:
python3 -c "import http.server, ssl; httpd = http.server.HTTPServer(('0.0.0.0', 8443), http.server.SimpleHTTPRequestHandler); httpd.socket = ssl.wrap_socket(httpd.socket, certfile='cert.pem', server_side=True); httpd.serve_forever()"
caddy file-server erledigt dies sauber mit automatischem HTTPS bei einer echten Domain.
P2P-Tools
Magic Wormhole (wormhole):
wormhole send grosse-datei.tar.gz
# gibt einen Code aus wie 7-crossover-clockwork
# Empfänger führt aus: wormhole receive 7-crossover-clockwork
Ende-zu-Ende-verschlüsselt, funktioniert über NATs über einen Rendezvous-Server. Ideal für einmalige direkte Übertragungen.
croc (von schollz): ähnlich wie wormhole, einzelne Binary, plattformübergreifend. In der Homelab-Community beliebt.
Diese Werkzeuge sind Peer-to-Peer, werden aber noch über Rendezvous-Server für NAT-Traversal geleitet — die Verschlüsselung ist Ende-zu-Ende, der Weg nicht direkt.
Verschlüsselung im Ruhezustand vor dem Upload
Für besonders sicherheitsbewusste Workflows das Archiv vor dem Senden über einen beliebigen Dienst verschlüsseln:
gpg --symmetric --cipher-algo AES256 grosse-datei.tar.gz
Erzeugt grosse-datei.tar.gz.gpg. Empfänger entschlüsselt mit gpg --decrypt. Das Passwort über einen anderen Kanal mitteilen.
Oder age verwenden, eine moderne Alternative:
age -p -o verschluesselt.age klartext.tar.gz
Bei Ende-zu-Ende-verschlüsselten Diensten wie HexaTransfer ist diese doppelte Verschlüsselung in der Regel unnötig — aber für hochsensible Szenarien macht doppelte Absicherung Sinn.
Auf hexatransfer.com testen — funktioniert aus jedem Linux-Browser, 10 GB kostenlos, Ende-zu-Ende-verschlüsselt, kein Client zu installieren.
Große Dateien sicher mit Ende-zu-Ende-Verschlüsselung senden
Übertragen Sie Dateien bis zu 10 GB kostenlos mit Ende-zu-Ende-Verschlüsselung. Kein Konto erforderlich. Ihre Dateien werden in Ihrem Browser verschlüsselt, bevor sie hochgeladen werden — niemand sonst kann sie lesen.
Datei senden