Waarom ziet het opslaggebruik er anders uit in de NAS-gebruikersinterface dan in het bestandssysteem?

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

NAS- en bestandssysteemgebruik verschillen vaak omdat hun tellers verschillende lagen omvatten, zoals snapshots, metagegevens, reserveringen, sparse extents en gedeelde blokken.

Een share kan 4 TB aan zichtbare bestanden bevatten, terwijl het NAS-dashboard 5,2 TB gebruikt rapporteert. Geen van beide totalen hoeft onjuist te zijn. De ene weergave kan logische bestandsgroottes optellen, terwijl de andere de fysieke toewijzing binnen de pool rapporteert, inclusief gegevens die de huidige mappenstructuur niet kan zien of aan zichtbare bestanden binnen dezelfde opslagpool kan toewijzen.

Logische bestandsgrootte en toegewezen ruimte beantwoorden verschillende vragen

Een bestand geeft toepassingen een logische lengte door, maar het bestandssysteem wijst opslag toe in blokken of extents. Sparse bestanden kunnen niet-toegewezen gaten bevatten, terwijl kleine bestanden een volledige toewijzingseenheid plus metagegevens kunnen gebruiken. Het optellen van bestandsnamen hoeft daarom niet gelijk te zijn aan de verbruikte capaciteit.

Een Linux-uitleg over verschillen tussen du en df laat zien dat totalen van mappen en hulpprogramma’s voor vrije ruimte van het bestandssysteem verschillende boekhoudlagen inspecteren. Hun resultaten kunnen onder verschillende omstandigheden legitiem uiteenlopen.

Compressie en het delen van blokken zorgen voor nog meer onduidelijkheid. Twee logische bestanden kunnen naar hetzelfde fysieke blok verwijzen, of gecomprimeerde gegevens kunnen minder ruimte innemen dan hun schijnbare lengte. Een gebruikersinterface moet kiezen of deze logisch eigenaarschap, exclusieve toewijzing, het aantal bytes waarnaar wordt verwezen of het totale poolverbruik rapporteert.

Snapshots en reserveringen houden blokken buiten de actieve mappenstructuur

Wanneer je een bestand verwijdert, wordt het uit de huidige map verwijderd, maar een snapshot kan de oude blokken behouden. Poolmetagegevens, pariteit, controlesommen, copy-on-write-geschiedenis en gereserveerde capaciteit kunnen ook als gebruikt of niet-beschikbaar worden geteld zonder in een share te verschijnen.

Een praktische bespreking van snapshotruimte legt uit dat snapshots blijven verwijzen naar gewijzigde of verwijderde gegevens. Ruimte komt pas vrij wanneer geen enkele bewaarde snapshot die blokken meer nodig heeft.

Een ander verborgen geval is een verwijderd bestand dat nog door een proces geopend is. Het pad ervan verdwijnt, waardoor een mapdoorzoeking het mist, maar de blokken blijven toegewezen totdat het proces de ingang sluit. Het dashboard ziet het poolgebruik, terwijl de actieve mappenstructuur kleiner lijkt.

Wanneer verschillende totalen op een echt probleem wijzen

Verschillende boekhoudlagen zijn geen excuus voor voortdurend groeiend, onverklaard gebruik. Een vastgelopen snapshotbeleid, een onbeheersbaar groeiend logbestand, een verweesde containerdataset, een replicatiereservering of een bestandssysteemfout kan een reëel capaciteitsrisico veroorzaken.

Een handleiding over verwijderde geopende bestanden laat zien hoe geopende verwijderde bestanden via procesinspectie vindbaar blijven. Dit mechanisme heeft een specifiek kenmerk en is geen vage afwijking.

De uitleg schiet ook tekort als beide hulpprogramma’s aangeven dat ze dezelfde dataset, snapshotreikwijdte, eenheden en toewijzingsbasis tonen, maar na vernieuwen nog steeds sterk uiteenlopen. Decimale versus binaire eenheden verklaren slechts een begrensd percentage. Controleer de definities voordat je een van beide weergaven als doorslaggevend beschouwt.

Breng de capaciteit van pool tot zichtbare bestanden met elkaar in overeenstemming

Leg op hetzelfde tijdstip de totale poolgrootte, toegewezen ruimte, vrije ruimte, naar datasets verwezen ruimte, exclusieve ruimte, snapshotruimte, reserveringen en totalen van zichtbare bestanden vast. Noteer of de waarden logisch of fysiek zijn en of compressie en gedeelde blokken zijn inbegrepen. Controleer op geopende verwijderde bestanden zonder iets te verwijderen.

Breng de inventaris in verband met NAS-opslaggedrag, omdat vectordatabases en containers gegevens kunnen plaatsen in datasets buiten de zichtbare share. Breng voor elke service het pad naar de onderliggende dataset in kaart.

Breng de gegevens vanaf de pool naar beneden met elkaar in overeenstemming: de pooltoewijzing moet volgens de definities van het platform gelijk zijn aan actieve datasets, snapshots, metagegevens en reserveringen. Onderzoek welke categorie tussen snapshots door groeit. Verwijder geen zichtbare bestanden alleen om een teller tevreden te stellen die voornamelijk door bewaarde geschiedenis wordt bepaald.

Tech & AI HUB

Meer om te lezen

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.