Warum sieht die Speicherplatznutzung in der NAS-Benutzeroberfläche anders aus als im Dateisystem?

Eva Wong ist die Technische Redakteurin und und leidenschaftliche Tüftlerin bei ZimaSpace. Eine lebenslange Geek mit einer Leidenschaft für Homelabs und Open-Source-Software, sie spezialisiert sich darauf, komplexe technische Konzepte in zugängliche, praktische Anleitungenzu übersetzen. Eva ist der Meinung, dass Self-Hosting Spaß machen und nicht einschüchternd sein sollte. Durch ihre Tutorials befähigt sie die Community, Hardware-Setups zu entmystifizieren, vom Bau ihres ersten NAS bis hin zur Beherrschung von Docker-Containern.

Die Nutzung eines NAS und des Dateisystems kann oft voneinander abweichen, weil ihre Zähler unterschiedliche Ebenen berücksichtigen, etwa Snapshots, Metadaten, Reserven, Sparse-Extents und gemeinsam genutzte Blöcke.

Eine Freigabe kann 4 TB sichtbare Dateien enthalten, während das NAS-Dashboard 5,2 TB als belegt meldet. Keine der beiden Gesamtsummen muss falsch sein. Eine Ansicht summiert möglicherweise die logischen Dateigrößen, während eine andere die physische Belegung im Pool angibt – einschließlich Daten, die der aktuelle Verzeichnisbaum nicht sehen oder sichtbaren Dateien innerhalb desselben Speicherpools nicht zuordnen kann.

Logische Dateigröße und belegter Speicher beantworten unterschiedliche Fragen

Eine Datei gibt Anwendungen eine logische Länge an, doch das Dateisystem weist Speicher in Blöcken oder Extents zu. Sparse-Dateien können nicht zugewiesene Lücken enthalten, während kleine Dateien möglicherweise eine vollständige Zuordnungseinheit plus Metadaten belegen. Das Summieren von Dateinamen muss daher nicht der tatsächlich verbrauchten Kapazität entsprechen.

Eine Linux-Erklärung zu den Unterschieden zwischen du und df zeigt, dass Verzeichnissummen und Werkzeuge zur Ermittlung des freien Speicherplatzes im Dateisystem unterschiedliche Abrechnungsebenen untersuchen. Unter mehreren Bedingungen weichen ihre Ergebnisse berechtigterweise voneinander ab.

Komprimierung und Block-Sharing sorgen für zusätzliche Unklarheit. Zwei logische Dateien können auf denselben physischen Block verweisen, oder komprimierte Daten können weniger Speicher als ihre scheinbare Länge belegen. Eine Benutzeroberfläche muss entscheiden, ob sie den logischen Besitz, die exklusive Belegung, referenzierte Bytes oder den gesamten Pool-Verbrauch ausweist.

Snapshots und Reserven halten Blöcke außerhalb des aktiven Verzeichnisbaums

Beim Löschen einer Datei wird sie aus dem aktuellen Verzeichnis entfernt, ein Snapshot kann ihre alten Blöcke jedoch weiterhin behalten. Pool-Metadaten, Parität, Prüfsummen, Copy-on-Write-Verlauf und reservierte Kapazität können ebenfalls als belegt oder nicht verfügbar zählen, ohne innerhalb einer Freigabe sichtbar zu sein.

Eine praxisnahe Erläuterung zu Snapshot-Speicherplatz erklärt, dass Snapshots weiterhin auf geänderte oder gelöschte Daten verweisen. Speicherplatz wird erst wieder frei, wenn kein aufbewahrter Snapshot diese Blöcke mehr benötigt.

Ein weiterer versteckter Fall ist eine gelöschte Datei, die noch von einem Prozess geöffnet ist. Ihr Pfad verschwindet, sodass eine Verzeichnisdurchsuchung sie nicht erfasst, die Blöcke jedoch belegt bleiben, bis der Prozess das Handle schließt. Das Dashboard erkennt die Pool-Nutzung, während der aktive Verzeichnisbaum kleiner erscheint.

Wann unterschiedliche Summen auf ein echtes Problem hindeuten

Unterschiedliche Abrechnungsebenen entschuldigen keine kontinuierlich wachsende, unerklärte Nutzung. Eine ins Stocken geratene Snapshot-Richtlinie, ein außer Kontrolle geratenes Protokoll, ein verwaistes Container-Dataset, eine Replikationsreserve oder ein Dateisystemfehler kann ein echtes Kapazitätsrisiko verursachen.

Eine Anleitung zu gelöschten, weiterhin geöffneten Dateien zeigt, wie geöffnete gelöschte Dateien durch die Prozessinspektion weiterhin auffindbar sind. Dieser Mechanismus weist ein spezifisches Muster auf und nicht lediglich eine vage Abweichung.

Die Erklärung ist außerdem unzureichend, wenn beide Werkzeuge behaupten, dasselbe Dataset, denselben Snapshot-Umfang, dieselben Einheiten und dieselbe Abrechnungsgrundlage anzuzeigen, die Werte aber auch nach einer Aktualisierung weit auseinanderliegen. Dezimale gegenüber binären Einheiten erklären nur einen begrenzten Prozentsatz. Klären Sie die Definitionen, bevor Sie eine der beiden Anzeigen als maßgeblich betrachten.

Kapazität vom Pool bis zu den sichtbaren Dateien abgleichen

Erfassen Sie Pool-Gesamtkapazität, belegten und freien Speicher, referenzierten und exklusiv belegten Dataset-Speicher, Snapshot-Speicher, Reserven sowie die Summen der sichtbaren Dateien zum selben Zeitpunkt. Vermerken Sie, ob die Werte logisch oder physisch sind und ob Komprimierung und gemeinsam genutzte Blöcke berücksichtigt werden. Prüfen Sie, ob gelöschte Dateien noch geöffnet sind, ohne etwas zu entfernen.

Setzen Sie die Bestandsaufnahme mit dem Speicherverhalten eines NAS in Beziehung, da Vektordatenbanken und Container Daten in Datasets außerhalb der sichtbaren Freigabe ablegen können. Ordnen Sie jeden Dienstpfad seinem zugrunde liegenden Dataset zu.

Gleichen Sie die Werte vom Pool ausgehend nach unten ab: Die Pool-Belegung sollte gemäß den Definitionen der Plattform den aktiven Datasets, Snapshots, Metadaten und Reserven entsprechen. Untersuchen Sie die Kategorie, die zwischen den Snapshots wächst. Löschen Sie sichtbare Dateien nicht einfach, um einen Zähler auszugleichen, der hauptsächlich durch den aufbewahrten Verlauf bestimmt wird.

Tech- & KI-Zentrum

Mehr zum Lesen

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.