Dropbox-Alternativen selbst hosten: Nextcloud und mehr
Nextcloud, Seafile, Syncthing und Objektspeicher im Vergleich: Topologie, echte Kosten auf einem kleinen VPS und warum Synchronisierung kein Backup ist.
Welche selbst gehostete Dropbox-Alternative sollten Sie einsetzen?
Vier selbst gehostete Dropbox-Alternativen sind besonders relevant: Nextcloud, Seafile, Syncthing und Objektspeicher mit einem darauf aufsetzenden Client. Sie sind nicht austauschbar. Nextcloud eignet sich für einen Haushalt oder ein kleines Team, in dem andere Personen Dateien empfangen müssen. Seafile eignet sich für eine Person oder ein Team, das sehr viele kleine Dateien synchronisiert und bei dem die Synchronisierungsgeschwindigkeit wichtiger ist als die Darstellung der Daten auf dem Datenträger. Syncthing eignet sich für eine Person, die ihre eigenen Geräte synchronisiert und bei der niemand außerhalb einen Link benötigt. Objektspeicher eignet sich für ein Archiv: günstiger Speicherplatz für Daten, die Sie nur selten öffnen.
Entscheiden Sie zunächst anhand der Funktionsweise der Synchronisierung, bevor Sie die Funktionen vergleichen. Funktionslisten sehen meist gleich aus. Die Topologie, also die Frage, welches Gerät die Kopie enthält, mit der alle anderen Geräte übereinstimmen, entscheidet darüber, ob Sie auch in sechs Monaten noch zufrieden sind.
Synchronisationstopologie: ein zentraler Server oder Peers ohne Server
Zwei Entwürfe stehen zur Auswahl. Der weitere Aufbau hängt größtenteils von dieser Entscheidung ab.
Ein zentraler Server. Nextcloud, Seafile und Objektspeicher funktionieren auf diese Weise. Eine Maschine, normalerweise ein VPS (virtual private server), enthält die maßgebliche Kopie. Jedes Gerät kommuniziert mit dieser Maschine. Ihr Laptop kann einen Monat lang ausgeschaltet sein, danach wieder gestartet werden und selbstständig den aktuellen Stand übernehmen. Ein Telefon mit 6 GB freiem Speicher kann eine Teilmenge speichern, während der Server alle Daten enthält. Ein Browser kann auf die Dateien zugreifen. Deshalb sind überhaupt Freigabelinks möglich.
Peers ohne Server. Syncthing funktioniert auf diese Weise. Die Geräte finden einander und tauschen Dateilisten direkt über eine verschlüsselte Verbindung aus. Keine Kopie ist maßgeblich. Eine Datei existiert nur auf den Geräten, die sie speichern. Zwei Geräte müssen gleichzeitig online sein, damit eine Änderung zwischen ihnen übertragen werden kann. Es gibt keine URL, die Sie anderen geben können, weil keine Maschine eine Seite bereitstellt.
Daraus ergeben sich vier Konsequenzen. Diese werden vielen erst später bewusst.
- Das Senden einer Datei an eine Person, die keine Software installieren wird, benötigt einen zentralen Server. Ein Link ist eine URL. Eine URL benötigt einen Prozess, der an einem Port lauscht.
- Der Zugriff auf Ihre Dateien von einer Maschine, die Sie nicht kontrollieren, beispielsweise einem Arbeitslaptop, benötigt einen zentralen Server.
- Ein Gerät, das mehrere Wochen ausgeschaltet war, übernimmt den aktuellen Stand von einem Server, sobald es wieder gestartet wird. In einer Peer-Konfiguration erfolgt dies nur, wenn gleichzeitig ein anderes Gerät mit diesen Daten online ist. Deshalb betreiben viele Syncthing-Benutzer eine Instanz auf einem VPS als ständig verfügbaren Peer.
- Der Speicherbedarf summiert sich anders. Ein zentraler Server enthält eine vollständige Kopie sowie alle Daten, die lokal auf den einzelnen Geräten gespeichert werden. Vier Peers, die einen Ordner gemeinsam nutzen, enthalten vier vollständige Kopien, weil jeder Peer den gesamten Ordner speichert.
Nextcloud: Benutzer, Gruppen und öffentliche Links
Nextcloud ist eine PHP-Webanwendung. Die Dateien werden als normale Dateien in einem Datenverzeichnis gespeichert und in einer Datenbank erfasst. Sie können einen Ordner für einen Benutzer, eine Gruppe oder über einen öffentlichen Link freigeben. Ein solcher Link kann mit einem Passwort und einem Ablaufdatum geschützt werden. Der Versionsverlauf ist standardmäßig aktiviert. Gelöschte Dateien werden zunächst in den Papierkorb verschoben. Desktop-Clients gibt es für Linux, macOS und Windows. Die Apps für iOS und Android sind offiziell. Wenn Sie Dropbox verlassen möchten, weil andere Personen Ihre Dateien erhalten müssen, ist dies die sachliche Antwort.
Der Nachteil sind die vielen Komponenten. Eine normale Installation benötigt einen Webserver, PHP-FPM (den PHP-Prozessmanager), eine Datenbank wie MariaDB oder PostgreSQL sowie Redis für die Dateisperren. Ein Hintergrundjob läuft alle fünf Minuten über cron oder einen systemd-Timer. Auf einem VPS mit 1 GB startet Nextcloud zunächst. Bei einem großen Upload oder einem langen occ Wartungsbefehl beendet der Out-of-Memory-Killer den Prozess. Betrachten Sie 2 GB als Mindestgröße für einige Benutzer. Sobald Sie weitere Apps aktivieren, werden Sie voraussichtlich 4 GB benötigen. Der zweite Nachteil sind Upgrades: Apps aus dem App Store werden für eine bestimmte Core-Version erstellt. Prüfen Sie daher vor dem Upgrade, ob die benötigten Apps die nächste Hauptversion unterstützen.
Nextcloud wird langsamer, wenn ein Konto Hunderttausende kleiner Dateien enthält. Jede Datei entspricht einer Zeile in der Dateicache-Tabelle und einer echten Datei auf der Festplatte. Der Desktop-Client verarbeitet diese Dateien nacheinander. In einem Haushalt tritt dieses Problem normalerweise nicht auf. Dimensionierung, TLS (Transport Layer Security) und Backups werden in einer Docker-basierten Nextcloud-Installation mit TLS und Backups behandelt. Dort finden Sie die nächsten Schritte, sobald Sie sich entschieden haben.
Beachten Sie den Umfang der Lösung. Nextcloud kann auch Kalender, Kontakte, Notizen und eine Fotobibliothek verwalten. Jede aktivierte App verursacht zusätzliche Hintergrundaktivität und kann ein Upgrade blockieren. Wenn Fotos das eigentliche Problem sind, ist ein spezialisiertes Tool besser geeignet: siehe Immich als selbst gehosteten Ersatz für Google Photos. Wenn es um Dokumente und Wikis geht, sollten Sie sich die selbst gehosteten Notion-Alternativen ansehen, statt weitere Apps auf Ihrem Dateiserver zu bündeln. Die Bearbeitung dieser Dokumente im Browser erfordert wiederum einen separaten Server und ist keine Nextcloud-App. Prüfen Sie daher OnlyOffice im Vergleich zu Collabora, bevor Sie davon ausgehen, dass 2 GB weiterhin ausreichen.
Seafile: für eine sehr große Zahl kleiner Dateien ausgelegt
Seafile teilt jede Datei in Blöcke auf und speichert diese in einem internen Objektspeicher, der über den Content-Hash adressiert wird. Das ist dasselbe Prinzip, das git für seine Objekte verwendet. Die Einheit für Synchronisierung und Freigabe ist eine Library und nicht ein Verzeichnisbaum. Da der Client Blöcke und einen Commit statt einer Anfrage pro Datei hochlädt, wird ein Verzeichnis mit 100,000 kleinen Dateien deutlich schneller synchronisiert, als es ein Protokoll mit einer Anfrage pro Datei schafft. Identische Blöcke werden nur einmal gespeichert. Eine zweite Kopie einer großen Datei benötigt daher fast keinen zusätzlichen Speicherplatz.
Der Nachteil ist, dass Ihre Dateien auf dem Server keine Dateien mehr sind. Wenn Sie das Speicherverzeichnis öffnen, finden Sie Objektdateien mit hexadezimalen Namen. Für den Datenzugriff benötigen Sie den Seafile-Client oder die eigenen Export- und fsck-Tools von Seafile. Backups funktionieren weiterhin, da es sich bei diesen Objekten um gewöhnliche Dateien handelt. Eine einzelne Tabelle können Sie jedoch nicht mit cp wiederherstellen. Entscheiden Sie jetzt, ob das akzeptabel ist. Diese Eigenschaft wird später häufig bereut.
Seafile wird als Community Edition und als kostenpflichtige Professional Edition angeboten. Die Abgrenzung zwischen beiden Editionen ändert sich zwischen den Releases. Lesen Sie daher die aktuellen Bedingungen auf der Website, bevor Sie ein Team um eine bestimmte Funktion herum planen. Offizielle Desktop- und Mobile-Clients sind verfügbar. Verschlüsselte Libraries werden auf dem Client verschlüsselt. Der Server speichert daher Ciphertext, den er nicht lesen kann. Wenn Sie die Passphrase verlieren, ist die Library nicht lesbar, auch für Sie nicht. Wenn Sie eine verschlüsselte Library im Browser öffnen, geben Sie diese Passphrase an die Websitzung weiter. Die stärkere Form dieser Zusicherung gilt daher für die Desktop- und Mobile-Clients.
Der Ressourcenbedarf liegt ungefähr auf dem Niveau von Nextcloud. Sie betreiben eine Datenbank, einen Memory-Cache und zwei Anwendungsprozesse. Daher sind 2 GB auch hier die sinnvolle Untergrenze.
Syncthing: nichts, woran Sie sich anmelden müssen
Syncthing ist eine einzelne Go-Binärdatei. Es überwacht Ordner, findet Peers über einen Discovery-Server oder ein Relay und synchronisiert direkt zwischen Geräten. Für die Personen, mit denen Sie synchronisieren, gibt es keine Konten und keine Anmeldeseite. Sie koppeln zwei Geräte anhand ihrer ID und akzeptieren den Ordner auf beiden Seiten. Der Betrieb erfordert hier den geringsten Aufwand, weil nur sehr wenig ausgeführt werden muss.
Sie verzichten dafür vollständig auf die Freigabefunktion. Ihr Eintrag lautet Device pairing only, no links. Sie können einem Kunden, einem Buchhalter oder einem Angehörigen keinen Link geben. Mobilgeräte sind die andere Lücke: Android app, no official iOS. Die offizielle FAQ des Projekts formuliert es eindeutig: „Das aktuelle Syncthing-Team plant in absehbarer Zukunft keine offizielle Unterstützung für iOS“, weil iOS die Hintergrundverarbeitung so stark einschränkt, dass eine zuverlässige Synchronisierung schwierig ist. iOS-Benutzer müssen auf Apps von Drittanbietern ausweichen.
Der Ressourcenverbrauch ist gering. Eine Besonderheit sollten Sie kennen: Syncthing führt für jede synchronisierte Datei einen Indexeintrag. Der Speicherbedarf und der erste Scan wachsen daher mit der Anzahl der Dateien und nicht mit der Gesamtgröße. Beim ersten Hashing eines großen Ordners wird die CPU eine Weile ausgelastet. Danach stabilisiert sich die Auslastung. Auf dem kleinsten VPS-Tarif läuft Syncthing problemlos.
Konflikte werden gelöst, indem beide Seiten erhalten bleiben. Wenn zwei Geräte dieselbe Datei ändern, während sie einander nicht erreichen können, benennt Syncthing eine Kopie um und legt sie neben der anderen ab. Dadurch finden Sie Dateien wie notes.sync-conflict-20260802-141530-K7MB3QT.md. Es geht nichts verloren. Es wird aber auch nichts zusammengeführt. Sie lösen den Konflikt manuell.
Objektspeicher mit einem Client: günstiger Speicherplatz, kein Sync-Ordner
Objektspeicher bezeichnet einen S3-kompatiblen Bucket (Simple Storage Service), den Sie entweder selbst mit MinIO betreiben oder bei einem Anbieter mieten. Sie greifen mit einem Tool darauf zu: über rclone auf der Kommandozeile oder über einen Desktop-Client, der den Bucket als Laufwerk einbindet. Wenn Sie den Bucket lieber über eine Webseite als über eine Shell durchsuchen, verwenden mehrere Tools aus diesem Vergleich selbst gehosteter Dateimanager einen S3-Bucket als Backend und ergänzen eigene Freigabelinks. Eine Freigabe erfolgt über eine presigned URL, also einen Link mit eigener Ablaufzeit. Die Versionierung ist eine Bucket-Einstellung: Bucket versioning, off by default. Aktivieren Sie sie daher beim Erstellen des Buckets, da sie nicht für Objekte gilt, die Sie zuvor hochgeladen haben.
Wenn Sie einen Bucket wie einen Sync-Ordner behandeln, treten die Probleme auf. Standardmäßig überwacht niemand Ihr Documents-Verzeichnis. rclone bisync führt eine bidirektionale Synchronisierung durch, und die eigene Dokumentation von rclone weist ausdrücklich auf den erforderlichen sorgfältigen Umgang hin. Seine Stärken spielt Objektspeicher als darunterliegende Speicherschicht aus: als Backup-Ziel oder als Speicherschicht hinter einer Anwendung. S3-kompatiblen Objektspeicher mit MinIO selbst hosten behandelt die Serverseite.
Der Ressourcenbedarf ist hier ungewöhnlich. MinIO besteht aus einer einzelnen Binärdatei und benötigt im Leerlauf wenig Ressourcen. Die tatsächlichen Kosten entstehen durch den Speicherplatz. Auf einem VPS bedeutet das ein pro Gigabyte gemietetes Block-Volume sowie die Bandbreite, die Sie beim Ein- und Auslagern von Objekten verbrauchen. Beides wird in free -h nicht berücksichtigt. Lesen Sie daher was ein VPS tatsächlich pro Monat kostet, bevor Sie die Größe eines Archivs festlegen.
Freigabe, mobile Clients und Versionierung im Vergleich
The data behind this chart
[
{
"tool": "Nextcloud",
"sharing": "Public links, users and groups",
"mobile": "Official iOS and Android apps",
"versioning": "On by default, plus trash"
},
{
"tool": "Seafile",
"sharing": "Public links with password and expiry",
"mobile": "Official iOS and Android apps",
"versioning": "Library history and snapshots"
},
{
"tool": "Syncthing",
"sharing": "Device pairing only, no links",
"mobile": "Android app, no official iOS",
"versioning": "Optional per folder, off by default"
},
{
"tool": "Object storage",
"sharing": "Presigned URLs you generate",
"mobile": "Third party clients only",
"versioning": "Bucket versioning, off by default"
}
]Alle 4 Optionen lassen sich entlang einer Linie einordnen. Drei davon können eine Datei an eine fremde Person weitergeben, die lediglich einen Browser benötigt. Eine davon kommuniziert ausschließlich mit Geräten, die Sie bereits besitzen. Der Versionierungseintrag von Seafile, Library history and snapshots, verdient einen Hinweis: Der Verlauf wird pro Bibliothek gespeichert. Wenn Sie eine Bibliothek löschen, wird auch ihr Verlauf gelöscht.
Daten wieder herausbekommen
Die Ausstiegskosten lassen sich jetzt günstig prüfen, ihre spätere Entdeckung kann teuer werden. Prüfen Sie sie daher, bevor Sie sich festlegen.
Nextcloud speichert echte Dateien in echten Verzeichnissen. Ein tar des Datenverzeichnisses liefert Ihnen daher Ihre Dokumente, selbst wenn die Anwendung nie wieder startet. Syncthing macht auf jedem Peer dasselbe. Das ist hier die beste Ausstiegsoption: Die Dateien liegen einfach auf jedem Gerät. Der Objektspeicher von Seafile benötigt Seafile oder dessen Exporttools, um die Blöcke wieder zu Dateien zusammenzusetzen. Für Objektspeicher benötigen Sie rclone oder ein gleichwertiges Tool. Das ist nur einen Befehl entfernt.
Synchronisierung ist kein Backup, und genau diese Lücke führt zu Datenverlust
Jedes Tool in diesem Abschnitt kopiert Änderungen zwischen Rechnern. Eine Löschung ist eine Änderung. Wenn Sie einen Ordner auf Ihrem Laptop entfernen, meldet der Client dies an den Server. Der Server übernimmt die Änderung, und jedes andere Gerät entfernt den Ordner ebenfalls. Ransomware nutzt denselben Ablauf: Sie verschlüsselt Dateien lokal, der Client erkennt geänderte Dateien und lädt die verschlüsselten Versionen hoch. Die Synchronisierung hat korrekt funktioniert. Ihre Daten sind trotzdem verloren.
Papierkörbe und der Versionsverlauf können die Folgen abmildern. Sie laufen jedoch ebenfalls ab, können von demselben Konto geleert werden, das den Fehler verursacht hat, und befinden sich auf derselben Festplatte wie die aktive Kopie. Bei einem ausgefallenen Volume gehen die Dateien und ihr Versionsverlauf gemeinsam verloren.
Ein Backup ist eine separate Kopie auf separater Hardware, die nach einem Zeitplan erstellt wird und aus der Sie mindestens einmal eine Wiederherstellung durchgeführt haben. Sichern Sie die Datenbank im selben Lauf wie die Dateien. Wenn Sie ein Nextcloud-Datenverzeichnis ohne die zugehörige Datenbank wiederherstellen, erhalten Sie eine Instanz, die diese Dateien nicht kennt. Ein occ files:scan stellt die Dateien anschließend wieder her, verliert jedoch die Freigaben und den Versionsverlauf, die in diesen Tabellen gespeichert waren. Geplante restic-Backups von einem VPS beschreibt die verschlüsselte und deduplizierte Variante, einschließlich der Prüfung einer Wiederherstellung, statt sie lediglich vorauszusetzen.
Was ich auswählen würde
Für die meisten Leserinnen und Leser wäre das Nextcloud. Nach dem Wechsel von Dropbox fehlt vielen vor allem die Möglichkeit, jemandem einen Link zu schicken, der nichts installieren wird, sowie eine Datei auf dem Telefon zu öffnen. Nextcloud bietet beides mit offiziellen Clients und ohne kostenpflichtige Stufe. Dafür sind 2 GB RAM ein angemessener Preis. Zwei Ausnahmen mache ich. Wenn der Ordner ausschließlich Ihnen gehört und ausschließlich auf Hardware liegt, die Sie besitzen, verwenden Sie Syncthing. Dann müssen Sie keinen Server patchen und keinen Web-Login absichern. Wenn Sie ein Arbeitsverzeichnis mit Hunderttausenden Dateien synchronisieren, verwenden Sie Seafile. Akzeptieren Sie dafür den undurchsichtigen Speicher. Object Storage gehört unter die von Ihnen gewählte Lösung, als Backup-Ziel, nicht davor als Synchronisierungstool.
FAQ
Ist Syncthing ein Backup für meinen Laptop?
Nein. Syncthing kopiert Änderungen zwischen Geräten. Eine Löschung ist ebenfalls eine Änderung. Wenn Sie eine Datei versehentlich löschen, verschwindet sie daher innerhalb weniger Sekunden von allen gekoppelten Geräten. Die Dateiversionierung pro Ordner hilft dabei. Sie ist jedoch deaktiviert, bis Sie sie für jeden Ordner aktivieren. Erstellen Sie zusätzlich ein echtes Backup auf separater Hardware nach einem festen Zeitplan. Führen Sie daraus einmal eine Wiederherstellung durch, damit Sie wissen, dass sie funktioniert.
Kann ich Nextcloud und Syncthing auf demselben VPS betreiben?
Ja. Beide Dienste verwenden unterschiedliche Ports und stehen nicht miteinander in Konflikt. Verweisen Sie einen Syncthing-Ordner nicht auf das Datenverzeichnis von Nextcloud. Nextcloud verwaltet jede Datei in einer Datenbank. Dateien, die darunter direkt auf dem Datenträger erscheinen, bleiben unsichtbar, bis Sie occ files:scan ausführen. Dateien, die darunter gelöscht werden, hinterlassen Datenbankeinträge ohne zugehörige Datei. Verwenden Sie für Syncthing ein eigenes Verzeichnis. Alternativ können Sie dieses Verzeichnis in Nextcloud als externen Speicher einbinden, damit Nextcloud es überwacht.
Welche Lösung ermöglicht es, einen Link mit einer Person ohne Konto zu teilen?
Nextcloud und Seafile erstellen beide öffentliche Links. Optional können Sie ein Passwort und ein Ablaufdatum festlegen. Object Storage stellt eine presigned URL bereit, die nach der von Ihnen festgelegten Zeit automatisch ungültig wird. Syncthing bietet dafür keine Möglichkeit. Das Freigabemodell basiert auf der Kopplung von Geräten. Die andere Person muss daher Syncthing installieren, Ihnen eine Geräte-ID mitteilen und den Ordner akzeptieren.
Wie viel Speicherplatz benötigt der Server?
Planen Sie für einen Server of record die vollständige Größe der freigegebenen Daten ein. Zusätzlich benötigen Sie Speicherplatz für den Versionsverlauf, den Papierkorb und laufende Uploads. Den Versionsverlauf unterschätzen viele. Wenn jede Version einer täglich geänderten Datei mit 2 GB gespeichert wird, wächst der Speicherbedarf schnell. Legen Sie daher frühzeitig eine Aufbewahrungsrichtlinie fest. Wenn Sie die Daten auf einem separaten Volume speichern, bleibt dieses Wachstum vom Root-Dateisystem getrennt. Bei einem vollen Datenträger fällt dann nicht der gesamte Server aus, sondern nur der betroffene Upload.