26. Juli 2026 11 Min. Lesezeit

Cold Storage mit Rclone testen: ein praxistauglicher Testplan

Bevor ein Dienst seine Dateien über einen Rclone-Mount aus der Cloud liest, sollten Sie mehr als den Verzeichniszugriff prüfen. Dieser Testplan deckt Cold Reads, Warm Reads, Schreibvorgänge, Cache-Verhalten, Dateiintegrität und Ausfälle ab.

Ein Rclone-Mount ist schnell eingerichtet. Das Remote erscheint als Verzeichnis, ls zeigt Dateien und der erste Funktionstest ist bestanden. Für den produktiven Betrieb sagt das noch wenig aus.

Sobald ein Dienst auf den Mount zugreift, kommen weitere Fragen dazu: Wie lange dauert der erste Zugriff auf eine Datei? Welche Zugriffe bedient der lokale Cache? Was geschieht mit einer noch nicht hochgeladenen Datei, wenn Rclone abstürzt? Sieht ein laufender Container den neu aufgebauten Mount wieder? Und wie reagiert der Dienst, wenn die Cloud vorübergehend nicht erreichbar ist?

Dieser Artikel liefert dafür einen allgemeinen Testplan. Sie können ihn für ein Dokumentenarchiv, einen Medienserver, eine Fotoverwaltung oder jeden anderen Dienst verwenden, der selten benötigte Dateien über Rclone aus einem Cold Storage bezieht.

Die wichtigsten Optionen von rclone

Zur Orientierung vorab die Rclone-Optionen, die in diesem Testplan vorkommen, sinngemäss aus der Dokumentation übersetzt:

Optionen im Überblick
OptionBedeutung
--seed nStartwert des Zufallsgenerators bei rclone test makefiles; gleicher Seed ergibt denselben Dateibaum
--files nAnzahl zu erzeugender Testdateien
--files-per-directory nDurchschnittliche Anzahl Dateien pro Verzeichnis
--min-file-size grösseKleinste erzeugte Dateigrösse (Suffixe wie K, M, G erlaubt)
--max-file-size grösseGrösste erzeugte Dateigrösse
--progressLaufende Fortschrittsanzeige während der Übertragung
--stats dauerIntervall, in dem Transferstatistiken ausgegeben werden
--log-file dateiSchreibt das Protokoll in die angegebene Datei
--log-level stufeDetailgrad des Protokolls: DEBUG, INFO, NOTICE oder ERROR
--one-wayPrüft bei rclone check nur, ob alle Quelldateien im Ziel vorhanden und identisch sind; zusätzliche Dateien im Ziel gelten nicht als Fehler
--downloadLädt die Daten beim Vergleich tatsächlich herunter, statt nur Hashes zu vergleichen
--vfs-cache-mode modusCache-Strategie des VFS-Layers; full puffert Lese- und Schreibzugriffe lokal
--cache-dir verzeichnisVerzeichnis für den lokalen Cache
--vfs-cache-max-size grösseWeiches Limit für die Gesamtgrösse des VFS-Caches
--vfs-cache-poll-interval dauerIntervall, in dem Rclone den Cache prüft und bereinigt
--vfs-write-back dauerWartezeit nach dem Schliessen einer Datei, bevor der Upload ins Remote beginnt
--vfs-read-ahead grösseZusätzliche Datenmenge, die bei full über die angeforderte Position hinaus vorausgelesen wird
--poll-interval dauerIntervall, in dem Rclone das Remote auf Änderungen abfragt (nur bei Backends mit Polling-Unterstützung)
--dir-cache-time dauerGültigkeitsdauer zwischengespeicherter Verzeichnislisten
--allow-otherErlaubt anderen Benutzern als dem mountenden den Zugriff auf den FUSE-Mount

Die vollständigen Listen stehen in der Rclone-Dokumentation, insbesondere unter rclone mount und in der Übersicht der globalen Flags.

Zuerst festlegen, was Sie erreichen wollen

Cold Storage bedeutet nicht automatisch dasselbe für jede Anwendung. Ein Medienserver liest grosse Dateien meist sequenziell. Eine Fotoverwaltung lädt viele kleine Vorschaudaten und springt an verschiedene Stellen. Ein Dokumentenarchiv öffnet vergleichsweise kleine Dateien, dafür aber oft nur einmal.

Notieren Sie vor dem Test die wichtigsten Eigenschaften Ihres echten Bestands:

  • typische Dateigrösse sowie grösste vorkommende Datei
  • Anzahl Dateien pro Verzeichnis
  • vollständiges Lesen oder zufällige Zugriffe auf einzelne Bereiche
  • Verhältnis zwischen Lese- und Schreibzugriffen
  • Zahl gleichzeitiger Benutzer oder Prozesse
  • Änderungen, die ausserhalb des Mounts direkt im Remote stattfinden
  • akzeptable Wartezeit für einen Cold Read
  • maximal verfügbarer Platz für den lokalen Cache

Erst daraus entstehen sinnvolle Erfolgskriterien. Eine einzelne Datei in 1.2 Sekunden zu öffnen, kann für ein Archiv völlig in Ordnung und für eine interaktive Anwendung unbrauchbar sein.

Einen reproduzierbaren Testbestand erzeugen

Rclone bringt dafür bereits ein passendes Werkzeug mit. rclone test makefiles erzeugt mit einem festen Seed jedes Mal denselben Dateibaum:

rclone test makefiles ./testdata \
  --seed 42 \
  --files 250 \
  --files-per-directory 25 \
  --min-file-size 16K \
  --max-file-size 32M
Optionen erklärt
OptionWirkung
./testdataZielverzeichnis, in dem der Testbaum entsteht
--seed 42Fester Startwert des Zufallsgenerators; jeder Lauf erzeugt denselben Bestand
--files 250250 Testdateien insgesamt
--files-per-directory 25Durchschnittlich 25 Dateien pro Verzeichnis
--min-file-size 16KKleinste Datei 16 KiB
--max-file-size 32MGrösste Datei 32 MiB

Passen Sie Anzahl und Grössen an Ihren echten Bestand an. Testen Sie nicht nur Durchschnittsdateien. Einige sehr kleine Dateien zeigen, wie teuer Metadatenzugriffe sind; einige grosse Dateien machen Durchsatz, Read-Ahead und Cache-Verhalten sichtbar.

Ergänzen Sie ausserdem Dateinamen, die in der Praxis Probleme verursachen können:

mkdir -p "testdata/Sonderfälle/Unterordner"
printf 'Leerzeichen\n' > "testdata/Sonderfälle/Datei mit Leerzeichen.txt"
printf 'Umlaute\n' > "testdata/Sonderfälle/Grösse und Änderung.txt"
printf 'Grossschreibung\n' > "testdata/Sonderfälle/Test.txt"
printf 'Kleinschreibung\n' > "testdata/Sonderfälle/test.txt"
Optionen erklärt
OptionWirkung
mkdir -pLegt auch fehlende übergeordnete Verzeichnisse an und meldet keinen Fehler, wenn das Verzeichnis existiert
printf '…\n' > dateiSchreibt den angegebenen Text als Dateiinhalt; die Umleitung erzeugt die Datei mit dem problematischen Namen

Der letzte Test ist besonders wichtig, wenn lokales Dateisystem und Cloud-Backend Gross- und Kleinschreibung unterschiedlich behandeln.

Wenn Ihr Dienst nur bestimmte Formate akzeptiert, reichen beliebige Binärdateien nicht. Erzeugen Sie dann zusätzlich synthetische Dateien in genau diesen Formaten. Bei Paperless-ngx waren das PDFs mit echter Textebene, damit der Test nicht versehentlich die OCR-Leistung statt des Speicherpfads misst. Bei einer Fotoverwaltung gehören unterschiedliche Bildgrössen und Formate in den Bestand, bei einem Medienserver kurze Dateien mit verschiedenen Codecs.

Eine Referenzmessung ohne Mount

Bevor FUSE und VFS-Cache ins Spiel kommen, sollten Sie das Backend direkt messen. Kopieren Sie den Bestand mit Rclone ins Test-Remote und speichern Sie ein ausführliches Protokoll:

rclone copy ./testdata remote:cold-storage-test \
  --progress \
  --stats 5s \
  --log-file rclone-copy.log \
  --log-level INFO
Optionen erklärt
OptionWirkung
./testdataQuelle der Kopie: der lokal erzeugte Testbestand
remote:cold-storage-testZiel: Pfad im konfigurierten Remote
--progressLaufende Fortschrittsanzeige im Terminal
--stats 5sTransferstatistik alle 5 Sekunden statt im Standardintervall
--log-file rclone-copy.logVollständiges Protokoll in eine Datei für die spätere Auswertung
--log-level INFOProtokolliert Transfers, Retries und Fehler, ohne den DEBUG-Umfang

Prüfen Sie danach, ob Quelle und Ziel übereinstimmen:

rclone check ./testdata remote:cold-storage-test \
  --one-way \
  --download
Optionen erklärt
OptionWirkung
./testdataReferenz: der lokale Originalbestand
remote:cold-storage-testPrüfling: der frisch hochgeladene Bestand im Remote
--one-wayPrüft nur, ob alle Quelldateien im Ziel vorhanden und identisch sind; zusätzliche Dateien im Ziel werden nicht bemängelt
--downloadLädt die Daten herunter und vergleicht die Inhalte, statt sich auf Hashes zu verlassen

--download ist hier entscheidend, weil manche Backends keine passenden Hashes bereitstellen. Der Vergleich dauert länger, liefert aber eine brauchbare Ausgangsbasis für den späteren Integritätstest.

Halten Sie Upload-Zeit, Transferrate, Anzahl Retries und API-Fehler fest. Wenn bereits der direkte Zugriff instabil ist, kann der Mount das nicht reparieren.

Den Test-Mount vom produktiven Cache trennen

Verwenden Sie für die Messung einen eigenen Mountpunkt und ein eigenes Cache-Verzeichnis:

rclone mount remote:cold-storage-test /mnt/rclone-test \
  --vfs-cache-mode full \
  --cache-dir /var/cache/rclone-test \
  --vfs-cache-max-size 10G \
  --vfs-cache-poll-interval 1m \
  --allow-other \
  --log-file /var/log/rclone-test.log \
  --log-level INFO
Optionen erklärt
OptionWirkung
remote:cold-storage-testZu mountendes Remote samt Pfad
/mnt/rclone-testMountpunkt auf dem Testsystem
--vfs-cache-mode fullPuffert Lese- und Schreibzugriffe vollständig im lokalen Cache
--cache-dir /var/cache/rclone-testEigenes Cache-Verzeichnis, getrennt vom produktiven Cache
--vfs-cache-max-size 10GWeiches Limit von 10 GiB für den VFS-Cache
--vfs-cache-poll-interval 1mCache-Prüfung und Bereinigung im Minutentakt
--allow-otherAuch andere Benutzer als der mountende dürfen zugreifen; nötig für Dienste und Container
--log-file /var/log/rclone-test.logProtokoll in eine Datei, um Zugriffe während der Tests nachzuvollziehen
--log-level INFOMittlerer Detailgrad des Protokolls

Die Werte sind ein Beispiel und keine allgemeine Empfehlung. Entscheidend ist die Trennung: Ein leerer Test-Cache macht Cold Reads reproduzierbar, ohne dass Sie Dateien aus einem laufenden produktiven Cache löschen müssen.

--vfs-cache-mode full ist für Anwendungen meist der aufschlussreichste Testmodus. Rclone puffert dabei Lese- und Schreibzugriffe lokal und kann Dateizugriffe besser abbilden, die bei einem reinen Objektspeicher nicht möglich wären. Die zusätzliche Kompatibilität kostet lokalen Speicherplatz.

Immer aus Sicht des echten Dienstes prüfen

Ein Mount kann für Ihren Benutzer funktionieren und für den Dienst trotzdem unbrauchbar sein. Häufige Ursachen sind eine andere Benutzer-ID, fehlendes --allow-other, Container-Grenzen oder eine falsche Mount-Propagation.

Führen Sie deshalb mindestens einen vollständigen Lesezugriff mit derselben Identität aus, unter der später die Anwendung läuft:

sudo -u <service-user> sha256sum /mnt/rclone-test/pfad/zur/datei
Optionen erklärt
OptionWirkung
-u <service-user>Führt den Befehl als der angegebene Benutzer aus, nicht als root
/mnt/rclone-test/pfad/zur/dateiZu lesende Datei; sha256sum erzwingt einen vollständigen Lesezugriff

Läuft der Dienst in Docker, gehört der Test in den Container:

docker exec --user <uid>:<gid> <app-container> \
  sha256sum /pfad/im/container/datei
Optionen erklärt
OptionWirkung
--user <uid>:<gid>Führt den Befehl im Container mit dieser Benutzer- und Gruppen-ID aus, unabhängig vom Standardbenutzer des Images
<app-container>Name oder ID des laufenden Anwendungscontainers
sha256sum /pfad/im/container/dateiAuszuführender Befehl; der Pfad ist der Mount aus Sicht des Containers

Noch besser ist ein echter Anwendungstest. Öffnen Sie die Datei über die Weboberfläche oder API des Dienstes. Nur so bemerken Sie, ob die Anwendung beispielsweise mehrere parallele Reads startet, an das Dateiende springt oder zusätzliche Metadaten erwartet.

Cold Reads und Warm Reads getrennt messen

Bei --vfs-cache-mode full liegen zwischen Anwendung und Cloud drei Ebenen:

EbeneWas dort liegt
Remotedie vollständige Datei im Clouddienst
VFS-Cachelokal gespeicherte Bereiche bereits gelesener Dateien
Linux-Page-Cachekürzlich verwendete Daten im RAM

Für einen Cold Read nehmen Sie eine Datei, deren Inhalt noch nie über den Test-Mount gelesen wurde. Beim direkt anschliessenden Warm Read liegt sie im VFS-Cache und meistens zusätzlich im RAM.

measure_read() {
  file="$1"
  label="$2"
  start=$(date +%s%3N)
  cat "$file" > /dev/null
  end=$(date +%s%3N)
  printf '%s: %s ms\n' "$label" "$((end - start))"
}

measure_read "/mnt/rclone-test/grosse-datei.bin" "Cold Read"
measure_read "/mnt/rclone-test/grosse-datei.bin" "Warm Read"
Optionen erklärt
OptionWirkung
date +%s%3NZeitstempel in Millisekunden: Unix-Sekunden, direkt gefolgt von den ersten drei Stellen des Nanosekunden-Anteils (GNU date)
cat "$file" > /dev/nullLiest die Datei vollständig, verwirft die Ausgabe; gemessen wird nur die Lesezeit
"$1", "$2"Argumente der Shell-Funktion: Dateipfad und Beschriftung der Messzeile

Messen Sie nicht nur eine Datei. Verwenden Sie mindestens zehn bisher ungelesene Dateien verschiedener Grösse und notieren Sie Median, langsamsten Wert und Dateigrösse. Ein einzelner Bestwert ist keine Entscheidungsgrundlage.

Ein Warm Read ist kein reiner Festplattentest, weil der Kernel Teile der Datei im RAM halten kann. Für die meisten Cold-Storage-Szenarien ist das kein Problem. Entscheidend ist, was ein Benutzer beim ersten und beim wiederholten Öffnen erlebt. Wenn Sie RAM und lokale Platte getrennt beurteilen wollen, müssen Sie den Page-Cache zusätzlich kontrollieren und nachweislich räumen.

Nicht nur vollständige Lesezugriffe testen

cat liest eine Datei von Anfang bis Ende. Viele Anwendungen verhalten sich anders:

  • Ein Videoplayer liest zunächst Header und Index, springt später an eine andere Position und lädt dann sequenziell weiter.
  • Eine Bildverwaltung liest Metadaten und erzeugt anschliessend ein Vorschaubild.
  • Ein Archivprogramm kann zuerst das Dateiende lesen.
  • Mehrere Worker können gleichzeitig auf verschiedene Dateien zugreifen.

Testen Sie diese Abläufe mit der tatsächlichen Anwendung. Beobachten Sie parallel das Rclone-Protokoll und den Cache. Bei grossen Dateien ist interessant, wie viel Rclone wirklich lokal ablegt und ob --vfs-read-ahead zum Zugriffsmuster passt.

Ein Rclone-Mount ist ausserdem kein sinnvoller Speicherort für Datenbanken oder andere Dateien, die verlässliches Locking und häufige Änderungen innerhalb derselben Datei benötigen. Der VFS-Layer gleicht Unterschiede zwischen Dateisystem und Objektspeicher aus, macht aus dem Backend aber kein lokales Dateisystem.

Den Schreibpfad separat abnehmen

Wenn Ihr Dienst nur liest, mounten Sie das Remote nach Möglichkeit schreibgeschützt. Muss er schreiben, testen Sie Erstellen, Überschreiben, Umbenennen und Löschen einzeln.

Eine geschriebene Datei erscheint nicht zwingend sofort im Remote. Bei aktivem VFS-Cache beginnt der Upload erst, nachdem die Datei geschlossen wurde und --vfs-write-back abgelaufen ist. Prüfen Sie deshalb beide Zustände:

  1. Die Anwendung hat die Datei erfolgreich geschlossen.
  2. Die Datei ist anschliessend über einen direkten Rclone-Zugriff im Remote lesbar.
printf 'writeback-test\n' > /mnt/rclone-test/writeback-test.txt

# Nach Ablauf von --vfs-write-back:
rclone cat remote:cold-storage-test/writeback-test.txt
Optionen erklärt
OptionWirkung
/mnt/rclone-test/writeback-test.txtZieldatei im Mount; die Umleitung schreibt über den VFS-Cache
remote:cold-storage-test/writeback-test.txtDirekter Zugriff am Mount vorbei: rclone cat liest die Datei aus dem Remote und gibt sie auf stdout aus

Wiederholen Sie den Test mit einer grossen Datei und beenden Sie Rclone während des noch laufenden Uploads. Starten Sie danach mit demselben Cache-Verzeichnis neu und kontrollieren Sie, ob der Upload fortgesetzt wird. Genau dieses Zeitfenster entscheidet darüber, wie viele Daten bei einem Serverausfall gefährdet sind.

Testen Sie auch Umbenennen und Löschen. Viele Cloud-Backends bilden diese Operationen anders ab als ein lokales Dateisystem. Relevant ist nicht nur, ob der Befehl erfolgreich endet, sondern wann die Änderung bei einem direkten Zugriff auf das Remote und bei weiteren Clients sichtbar wird.

Änderungen ausserhalb des Mounts testen

Dateien können über die Weboberfläche des Anbieters, einen zweiten Rclone-Prozess oder einen anderen Server verändert werden. Der Mount sieht solche Änderungen nicht immer sofort, weil Verzeichnisinformationen zwischengespeichert werden.

Legen Sie deshalb mit einem zweiten Rclone-Aufruf eine Datei direkt im Remote an:

printf 'external-change\n' > external-change.txt
rclone copyto external-change.txt \
  remote:cold-storage-test/external-change.txt
Optionen erklärt
OptionWirkung
external-change.txtQuelle: die lokal erzeugte Datei
remote:cold-storage-test/external-change.txtZiel mit exaktem Dateinamen; copyto kopiert eine einzelne Datei unter genau diesem Namen, statt wie copy in ein Verzeichnis

Messen Sie, wann die Datei im Mount erscheint. Wiederholen Sie den Test für Änderung und Löschung. Das Ergebnis hängt vom Backend, dessen Polling-Unterstützung sowie --poll-interval und --dir-cache-time ab. Wenn die Anwendung aktuelle Änderungen sofort sehen muss, gehört dieses Verhalten ausdrücklich in die Abnahmekriterien.

Bei aktivierter Remote-Control-Schnittstelle können Sie den Verzeichnis-Cache gezielt verwerfen:

rclone rc vfs/forget
Optionen erklärt
OptionWirkung
vfs/forgetAuszuführender Remote-Control-Befehl: verwirft den zwischengespeicherten Verzeichnisbaum des VFS, sodass der nächste Zugriff neu beim Remote nachfragt

Das ist nützlich für einen manuellen Test, ersetzt aber keine passende Betriebsstrategie.

Den Cache unter Druck setzen

Ein fast leerer Cache ist der einfachste Fall. Setzen Sie --vfs-cache-max-size in einer zweiten Testrunde bewusst klein und lesen Sie mehr Daten, als hineinpassen.

du -sh /var/cache/rclone-test/vfs
du -sh --apparent-size /var/cache/rclone-test/vfs
find /var/cache/rclone-test/vfs -type f | wc -l
Optionen erklärt
OptionWirkung
du -sFasst den Platzverbrauch zu einer Summenzeile zusammen, statt jedes Unterverzeichnis aufzulisten
du -hAusgabe in menschenlesbaren Einheiten (K, M, G)
du --apparent-sizeZeigt die logische Dateigrösse statt des tatsächlich belegten Plattenplatzes
find … -type fBerücksichtigt nur reguläre Dateien, keine Verzeichnisse
wc -lZählt die Zeilen der Ausgabe, hier also die Anzahl Cache-Dateien

Die beiden Grössen können stark voneinander abweichen. Im Full-Modus verwendet Rclone Sparse Files: Eine Datei zeigt ihre vollständige logische Grösse, obwohl nur die gelesenen Bereiche lokalen Platz belegen.

Das Cache-Limit ist zudem weich. Rclone prüft es im Rhythmus von --vfs-cache-poll-interval, und geöffnete Dateien können nicht entfernt werden. Der Cache darf das Limit deshalb kurzzeitig überschreiten. Er sollte nach dem Schliessen der Dateien und dem nächsten Aufräumlauf aber wieder sinken.

Protokollieren Sie Spitzenwert, Wert nach der Bereinigung und die dafür benötigte Zeit. So lässt sich der nötige lokale Speicher vernünftig dimensionieren.

Zwei unterschiedliche Ausfälle simulieren

Eine nicht erreichbare Cloud und ein abgestürzter Rclone-Prozess sind zwei verschiedene Fehler:

AusfallWas Sie damit prüfen
Backend oder Netzwerk nicht erreichbar, Rclone läuft weiterVerhalten bei Retries, Timeouts und bereits gecachten Dateien
Rclone-Prozess beendetVerhalten des FUSE-Mounts und Wiederherstellung des Mountpunkts

Simulieren Sie beides nur in der Testumgebung. Einen Rclone-Container können Sie für den zweiten Fall hart beenden:

docker kill --signal KILL <rclone-container>
Optionen erklärt
OptionWirkung
--signal KILLSendet SIGKILL statt des Standardsignals SIGTERM; der Prozess erhält keine Gelegenheit zum Aufräumen
<rclone-container>Name oder ID des Rclone-Containers

Prüfen Sie während des Ausfalls die Anwendung und nicht nur den Mountpunkt:

  • Welche Funktionen bleiben verfügbar?
  • Wie lange wartet ein Zugriff, bevor ein Fehler erscheint?
  • Sind bereits vollständig gecachte Dateien noch erreichbar?
  • Stoppt die Anwendung neue Schreibvorgänge?
  • Entsteht eine verständliche Fehlermeldung oder nur ein hängender Prozess?
  • Löst Ihr Monitoring aus?

Ein Schreibdienst darf bei fehlendem Mount nicht unbemerkt in das darunterliegende lokale Verzeichnis schreiben. Nach der Rückkehr des Mounts würden diese Dateien verdeckt. Ein einfacher Schutz vor jedem Schreibjob ist:

mountpoint -q /mnt/rclone-test || exit 1
Optionen erklärt
OptionWirkung
-qKeine Ausgabe; das Ergebnis steht nur im Exit-Code
/mnt/rclone-testZu prüfender Pfad; Exit-Code 0 nur, wenn dort tatsächlich ein Mount aktiv ist
|| exit 1Bricht das Skript ab, wenn der Pfad kein Mountpunkt ist

Nach dem Neustart von Rclone prüfen Sie den Mount auf dem Host und aus jedem konsumierenden Container. Ein neu aufgebauter Mount erreicht einen bereits laufenden Container nur mit passender Mount-Propagation. Für Docker ist meistens rslave auf der konsumierenden Seite nötig. Die Details stehen im Artikel Rclone-Mounts in Docker zuverlässig betreiben.

Ein konkretes Beispiel aus Paperless-ngx

Für meinen Paperless-Test erzeugte ich 40 PDFs mit insgesamt 13.9 MB. Ein bisher ungeöffnetes Dokument brauchte rund 1.8 Sekunden, ein direkt wiederholter Zugriff 19 bis 24 Millisekunden. Ein auf 4 MB begrenzter VFS-Cache stieg kurzzeitig auf 12.7 MiB und wurde beim nächsten Lauf wieder bereinigt.

Während das Remote nicht erreichbar war, funktionierten Dokumentliste, Volltextsuche und Vorschaubilder weiter, weil diese Daten lokal lagen. Nur das Original liess sich nicht öffnen. Nach dem Wiederaufbau des Mounts konnte der laufende Paperless-Container wieder auf die Dateien zugreifen, ohne selbst neu gestartet zu werden.

Diese Zahlen sind kein Benchmark für Rclone oder Proton Drive. Interessant ist das Verhalten: Hot Storage blieb lokal verfügbar, Cold Reads waren langsamer aber planbar, und der Dienst erholte sich nach dem Ausfall.

Was ins Testprotokoll gehört

Ein später nachvollziehbares Ergebnis enthält mindestens:

  • Rclone-Version und verwendetes Backend
  • Betriebssystem, FUSE-Variante und Dateisystem des Cache-Verzeichnisses
  • vollständiger Mount-Befehl ohne Zugangsdaten
  • Zahl, Grössenverteilung und Struktur der Testdateien
  • Cold-Read- und Warm-Read-Werte für mehrere Dateien
  • Schreibdauer bis zur Sichtbarkeit im Remote
  • Cache-Spitzenwert und Dauer der Bereinigung
  • Ergebnis von rclone check --download
  • Verhalten bei Backend-Ausfall und beendetem Rclone-Prozess
  • Wiederherstellungszeit aus Sicht der Anwendung
  • Retries, Timeouts, Drosselungen und Authentifizierungsfehler aus dem Log

Definieren Sie für jeden Punkt vorab einen Grenzwert. Dann endet der Test mit einer Entscheidung und nicht nur mit einer Sammlung interessanter Zahlen.

Wann der Aufbau bereit ist

Ein Cold-Storage-Mount ist einsatzbereit, wenn Sie diese Fragen mit Ja beantworten können:

  • Sind Cold Reads für den vorgesehenen Dienst schnell genug?
  • Beschleunigt der Cache wiederholte Zugriffe wie erwartet?
  • Bleibt der lokale Platzbedarf auch unter Last kontrollierbar?
  • Stimmen alle Dateien nach einem vollständigen Download?
  • Funktionieren alle benötigten Dateioperationen mit dem gewählten Backend?
  • Verhält sich die Anwendung bei einem Cloud-Ausfall kontrolliert?
  • Werden Schreibvorgänge bei fehlendem Mount sicher gestoppt?
  • Erreicht ein neu aufgebauter Mount alle laufenden Verbraucher?
  • Zeigt das Monitoring den Ausfall, bevor ein Benutzer ihn meldet?

Wenn eine Antwort fehlt, wissen Sie immerhin genau, woran Sie weiterarbeiten müssen. Das ist wesentlich hilfreicher als ein Mount, der beim ersten ls gut aussah und erst im Betrieb seine Grenzen zeigt.

Quellen

  1. Rclone test makefiles

    reproduzierbare Testdateien und Verzeichnisstrukturen mit konfigurierbaren Grössen.

    https://rclone.org/commands/rclone_test_makefiles/
  2. Rclone mount

    VFS-Cache-Modi, Writeback, Sparse Files, Cache-Limits und Verzeichnis-Cache.

    https://rclone.org/commands/rclone_mount/
  3. Rclone check

    Vergleich von Quelle und Ziel, einschliesslich vollständiger Prüfung mit --download.

    https://rclone.org/commands/rclone_check/
  4. Rclone Remote Control

    gezieltes Verwerfen des VFS-Verzeichnis-Caches mit vfs/forget.

    https://rclone.org/rc/
  5. Rclone Global Flags

    vollständige Referenz der globalen Optionen, darunter Logging, Statistiken und die VFS-Parameter.

    https://rclone.org/flags/

Kommentare

Die Kommentare werden von GitHub / Giscus geladen.