Dlaczego NAS nie odzyskuje miejsca po usunięciu dużych plików?

Eva Wong jest Technicznym pisarzem i stałym majsterkowiczem w ZimaSpace. Całe życie geek z pasją do homelabów i oprogramowania open-source, specjalizuje się w tłumaczeniu skomplikowanych koncepcji technicznych na przystępne, praktyczne przewodniki. Eva wierzy, że samodzielne hostowanie powinno być zabawą, a nie czymś onieśmielającym. Poprzez swoje samouczki umożliwia społeczności rozwiewanie tajemnic konfiguracji sprzętu, od budowy pierwszego NAS po opanowanie kontenerów Docker.

NAS może nie odzyskać wolnego miejsca po zniknięciu dużego pliku, ponieważ usunięcie jego widocznej nazwy to tylko część odzyskiwania przestrzeni. Kosz, migawka systemu plików, wersja kopii zapasowej lub działający proces mogą nadal przechowywać podstawowe bloki pliku.

Właściwa naprawa zależy od tego, co nadal odnosi się do tych bloków. Sprawdź udział, warstwę migawki, działające usługi i rozliczenia puli w tej kolejności. Nie usuwaj wszystkich migawek ani nie restartuj całego NAS, zanim nie zidentyfikujesz, która warstwa posiada brakujące miejsce.

Główna przyczyna: plik zniknął, ale jego bloki są nadal referencjonowane

Plik ma widoczny wpis katalogowy i bloki pamięci zawierające jego dane. Usunięcie wpisu powoduje zniknięcie pliku z folderu, ale system plików może ponownie użyć jego bloków dopiero po zwolnieniu wszystkich pozostałych odwołań. To wyjaśnia, dlaczego skuteczne usunięcie nie zawsze powoduje równy wzrost wolnego miejsca.

Na NAS opartym na Linuksie usługa może utrzymywać już usunięty plik otwarty. Jądro zachowuje dane do momentu zamknięcia ostatniego deskryptora pliku, mimo że przeglądarki plików i normalne skanowanie katalogów nie widzą go już. Wyjaśnienie Red Hata dotyczące zatrzymania przestrzeni dyskowej przez usunięte, ale otwarte pliki pokazuje, dlaczego zatrzymanie lub łagodne ponowne uruchomienie procesu zwalnia miejsce, którego samo usunięcie nie zwolniło.

Inne miejsca przechowywania działają powyżej warstwy otwartych plików. Usługa sieciowego kosza może przenieść plik zamiast go odłączyć, podczas gdy migawka copy-on-write celowo zachowuje starsze bloki do odzysku. Widoczny efekt jest podobny — niewielka lub żadna odzyskana pojemność — ale bezpieczne działanie naprawcze jest inne.

Która warstwa NAS nadal przechowuje usunięte dane?

Zacznij od porównania, co się zmieniło po usunięciu. Nazwa pliku mogła zostać przeniesiona do ukrytego katalogu kosza, aktywny zestaw danych mógł się skurczyć, podczas gdy użycie migawki wzrosło, lub całkowita pojemność puli może pozostać wyższa niż pliki, które narzędzia katalogowe mogą policzyć. Te wzorce zawężają miejsce zajmowane bez konieczności destrukcyjnego czyszczenia.

Co obserwujesz Prawdopodobny zajmujący miejsce Co sprawdzić Bezpieczne następne działanie
Plik znika, ale folder kosza rośnie Kosz udziału Kosz dla tego samego udziału i użytkownika Sprawdź i opróżnij właściwą lokalizację kosza
Użycie aktywnego zestawu danych spada, ale użycie puli prawie się nie zmienia Migawki lub zachowane wersje Przestrzeń migawki i daty przechowywania Wygasaj tylko wersje spoza polityki odzyskiwania
Użycie systemu plików jest wyższe niż widoczne sumy katalogów Usunięty plik jest nadal otwarty Procesy z otwartymi plikami bez powiązania Łagodne ponowne uruchomienie lub przeładowanie usługi przechowującej
Jeden udział się kurczy, ale całkowita wolna przestrzeń puli nie Zestaw danych potomnych, rezerwacja lub inne obciążenie Użycie według zestawu danych, aplikacji i zadania kopii zapasowej Popraw rzeczywistego konsumenta, a nie udział
Zmiany wolnej przestrzeni krótko po usunięciu Oczekujące rozliczenia lub czyszczenie w tle Świeże metryki puli po ustabilizowaniu aktywności Poczekaj i odśwież przed dokonaniem kolejnej zmiany

Kosz na śmieci to najprostszy przypadek. Zachowanie kosza VFS w Sambie przechwytuje żądania usunięcia i przenosi pliki do repozytorium zamiast usuwać je natychmiast. Plik usunięty przez udział SMB może więc pozostać na tej samej puli pamięci nawet po zniknięciu z oryginalnego folderu.

Migawki są mniej oczywiste, ponieważ mogą zachować bloki bez przechowywania innego zwykłego pliku w aktywnym katalogu. Gdy migawka odnosi się do stanu sprzed usunięcia, usunięcie pliku na żywo usuwa tylko bieżące odniesienie. Ten przykład rozliczania przestrzeni migawki pokazuje, dlaczego jedna migawka może odzyskać niewiele, gdy inne migawki nadal odnoszą się do tych samych bloków.

Wartości puli i udziału mogą również mierzyć różne zakresy. Udział może raportować swój zestaw danych lub limit, podczas gdy pulpit magazynu obejmuje zestawy danych potomnych, dane aplikacji, wersje kopii zapasowych, rezerwacje i bloki przechowywane przez migawki. Porównaj podobne dane przed stwierdzeniem, że usunięcie się nie powiodło.

Odzyskaj przestrzeń bez niszczenia historii odzyskiwania

Odzyskiwanie powinno przejść od kontroli odwracalnych do trwałego usunięcia. Najpierw odśwież widok pojemności i potwierdź, że czytasz właściwą pulę, zestaw danych i udział. Krótkie opóźnienie w rozliczeniach może być normalne; utrzymująca się luka po ustabilizowaniu aktywności wskazuje, że inny odnośnik lub zakres przechowywania wymaga dalszego zbadania.

  1. Potwierdź, że usunięty plik nie znajduje się w oryginalnym udziale i nie został przeniesiony ani zmieniony przez aplikację.
  2. Sprawdź kosz na śmieci powiązany z tym konkretnym udziałem i kontem użytkownika.
  3. Przejrzyj migawki i retencję kopii zapasowych według daty, zestawu danych i szacowanej przestrzeni do odzyskania.
  4. Porównaj użycie systemu plików z widocznymi sumami katalogów, aby zidentyfikować ukrytą alokację.
  5. Sprawdź zestawy danych potomnych, wolumeny aplikacji, limity i rezerwacje przed zmianą puli.
  6. Zwolnij potwierdzonego posiadacza przez jego normalną retencję, usługę lub kontrolę administracyjną.

Gdy użycie systemu plików jest wyższe niż widoczna suma katalogów, sprawdź usunięte pliki, które są nadal otwarte. sprawdzenie otwartych plików lsof używa lsof +L1 do listowania plików bez pozostałych linków katalogowych. Zidentyfikuj proces i użyj jego normalnej ścieżki przeładowania lub łagodnego restartu; nie kończ nieznanej usługi bazy danych lub magazynu tylko po to, by odzyskać miejsce.

Dla danych przechowywanych w migawkach oszacuj, ile faktycznie zwróci każda zmiana retencji przed usunięciem punktów odzyskiwania. Bloki współdzielone przez kilka migawek mogą pozostać przydzielone do wygaśnięcia ostatniej migawki, więc usunięcie jednej migawki może zwrócić znacznie mniej miejsca niż sugeruje jej pozorna wielkość historii. Najpierw zachowaj wartość odzyskiwania i świadomie dostosuj retencję.

Jeśli rutynowe usuwanie wielokrotnie zapełnia pulę prawie do pełna, problemem jest także planowanie pojemności. Retencja kosza, migawki, aplikacje i historia kopii zapasowych potrzebują zapasu ponad rozmiar plików na żywo, więc planowanie użytecznej pojemności NAS musi uwzględniać tych mniej widocznych konsumentów.

Najczęściej zadawane pytania

Dlaczego opróżnienie kosza NAS zwolniło tylko część miejsca?

Te same bloki mogą być nadal odwoływane przez migawki, wersje kopii zapasowych lub otwarty proces. Opróżnienie kosza usuwa tylko tego posiadacza; nie nadpisuje innych odwołań ani nie zwalnia miejsca zarezerwowanego przez inny zestaw danych.

Jak długo powinien NAS potrzebować, aby pokazać nowo zwolnione miejsce?

Krótka zwłoka podczas rozliczania przestrzeni i pracy w tle może być normalna. Jeśli wartość pozostaje niezmieniona po odświeżeniu panelu i statystyk systemu plików, sprawdź migawki, usunięte otwarte pliki, limity oraz czy wyświetlana liczba dotyczy udziału czy całego puli.

Czy RAID zapobiega zwalnianiu miejsca po usunięciu plików?

RAID zazwyczaj usuwa plik w całej aktywnej macierzy; nie zachowuje starego pliku jako historii odzyskiwania. Kosze i migawki to oddzielne warstwy, podczas gdy ograniczenia ochrony RAID dotyczą dostępności, a nie odzyskiwania usuniętych plików czy zwalniania miejsca.

Wsparcie i wskazówki

Więcej do przeczytania

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.