Wiem, że rozmiar samego katalogu różni się od rozmiarów plików w nim zawartych.
Uważam katalog za listę katalogów i plików w nim zawartych, dlatego rozmiar katalogu powinien być powiązany z liczbą plików / katalogów w środku, z minimum 4096 bajtami z powodu ograniczenia rozmiaru bloku.
Ale w moim systemie mam wiele dobrze zapełnionych katalogów z 4096 bajtami, a niektóre katalogi, które są znacznie mniej zapełnione, mają około 10 megabajtów. Czy możesz mi wyjaśnić, dlaczego tak się dzieje?
Odpowiedzi:
Użyty system plików i maksymalna liczba jednostek w tym katalogu w dowolnym momencie określa rozmiar. Po wyczerpaniu domyślnego rozmiaru zarezerwowanego dla katalogu, przydzielane jest więcej miejsca dla katalogu. Jednak gdy liczba jednostek spadnie, przydzielone miejsce nie zostanie automatycznie zwolnione. Tak więc, jeśli w pewnym momencie katalog ma 10 milionów jednostek, pozostanie ten sam rozmiar, jeśli 9 999 999 z nich zostanie usuniętych. Prowadzi to do interesujących sytuacji, takich jak ten post w systemie Unix i Linux .
Niekoniecznie dotyczy to innych systemów plików. Te
ext{2,3,4}
są dotknięte systemy plików. NTFS jest w mniejszym stopniu.tmpfs
i btrfs nie są. ZFS jest raczej konserwatywny, mam wyjście2
dla drugiegostat
polecenia.Związane z:
źródło