Dateien vom Handy auf einen Server, ein NAS oder einen Raspberry Pi senden

Zuletzt geprüft

Bei den meisten Browser-Tools für den Dateiaustausch muss auf der Empfangsseite ein Browser-Tab offen sein. Ein Heimserver, ein NAS, ein Raspberry Pi oder eine Cloud-VM hat weder Bildschirm noch Browser. Der Eingang von tosstome auf der Kommandozeile ist genau für solche Rechner gebaut.

Den Eingang einrichten

Auf dem Server (Node.js 22 oder neuer):

tosstome listen --dir /srv/inbox

Der Befehl gibt im Terminal einen Link und einen QR-Code aus:

Ist das Handy im selben Netzwerk wie der Server, gehen die Dateien direkt über dieses Netzwerk an den Server und verlassen es nie. Von anderswo gehen sie direkt, wenn die beiden Netzwerke es zulassen, oder über ein Relay, das nichts behält.

Der Link des Eingangs bleibt über Neustarts hinweg gleich, deshalb funktioniert das Symbol auf dem Startbildschirm weiter. Um ihn später erneut auszugeben, führe tosstome url aus. Um den alten Link zu verwerfen und einen neuen zu erzeugen, führe tosstome listen --new aus.

So ist der Eingang geschützt

Auch im lokalen Netzwerk sichtbar

tosstome listen --nearby

Mit --nearby erscheint der Server außerdem in der Liste „In diesem Netzwerk“ der Browser im selben Netzwerk, sodass jeder zu Hause ohne den Link an ihn senden kann. Diese Dateien landen in einem separaten Unterordner nearby/, weil jeder in diesem Netzwerk sie senden kann.

Als Dienst betreiben

Für einen Rechner, der immer Dateien annehmen soll, führst du den Befehl unter dem aus, was auch deine anderen Dienste am Laufen hält, etwa eine systemd-Unit, ein Docker-Container oder tmux. Mit --json bekommst du pro Zeile ein JSON-Ereignis (ready, offer, file, error) für Logs oder Skripte.

[Unit]
Description=tosstome inbox
After=network-online.target

[Service]
ExecStart=/usr/bin/env tosstome listen --dir /srv/inbox --json
Restart=always
User=media

[Install]
WantedBy=multi-user.target

Vom Terminal eines anderen Computers senden

tosstome send report.pdf photos.zip --to "INBOX_LINK"

Setze den Link in Anführungszeichen, denn er enthält ein #, das die Shell als Kommentar behandelt.

Fragen

Braucht der Server eine öffentliche IP oder offene Ports?

Nein. Der Eingang baut eine ausgehende WebSocket-Verbindung zu toss2.me auf und wartet dort. Er funktioniert also hinter Heimroutern, NAT und Firewalls, die ausgehendes HTTPS erlauben.

Laufen die Dateien zu Hause übers Internet?

Nein. Nur der kurze Verbindungsaufbau läuft über toss2.me. Sind Handy und Server im selben Netzwerk, gehen die Dateien per WebRTC direkt zwischen ihnen, die Geschwindigkeit wird also von deinem WLAN oder Ethernet begrenzt. Die Seite zeigt an, ob eine Übertragung direkt oder über das Relay lief.

Was passiert, wenn der Server beim Senden offline ist?

Es wird nichts gesendet und nichts gespeichert. Die Seite auf dem Handy meldet, dass der Eingang offline ist.

Können andere Leute an meinen Eingang senden?

Nur Leute, die den Link haben. Wenn er in falsche Hände gerät, ersetze ihn mit tosstome listen --new. Der alte Link funktioniert dann nicht mehr.

Gibt es eine Größenbeschränkung für Dateien?

tosstome setzt kein Limit. Ein empfangender Browser hält die Datei im Arbeitsspeicher, bis du sie speicherst. Bei Dateien von mehreren Gigabyte ist deshalb der Eingang auf der Kommandozeile der bessere Empfänger, weil er direkt auf die Festplatte schreibt.

Verwandt

Jetzt ausprobieren

Öffne toss2.me auf zwei Geräten. Ohne App, ohne Konto, ohne Speicherung.

Jetzt eine Datei senden