Rozumiem, co to jest i-węzeł, ale jaka jest dokładna definicja osieroconego i-węzła? Naprawdę nie rozumiem, co to znaczy.
AKTUALIZACJA
Był czas, że na zarządzanym przeze mnie serwerze zabrakło i-węzłów, ale kiedy zrobiłem df -h, pokazało mi to, że na serwerze wykorzystano tylko 60% miejsca. Zgaduję, że dzieje się tak z powodu osieroconych i-węzłów. Jak można wykorzystać wszystkie i-węzły, ale na serwerze pozostało jeszcze „miejsce”? Czy potrafisz rozwiązać ten problem w swoich odpowiedziach?
filesystems
inode
ninjacoder
źródło
źródło
df -i
pokaże odpowiednie informacje dla i-węzłów.Odpowiedzi:
Osierocony i-węzeł to i-węzeł, który nie jest dołączony do pozycji katalogu w systemie plików, co oznacza, że nie można do niego dotrzeć.
Osierocone i-węzły mogą pojawić się z wielu powodów:
fsck
tworzy nowe wpisy katalogu dla osieroconych i-węzłów wlost+found
.źródło
df -h
przeze mnie serwerze zabrakło i-węzłów, ale kiedy to zrobiłem , pokazało mi, że na serwerze wykorzystano tylko 60% miejsca. Zgaduję, że dzieje się tak z powodu osieroconych i-węzłów. Jak można wykorzystać wszystkie i-węzły, ale na serwerze pozostało jeszcze „miejsce”?Osierocony i-węzeł to plik, który jest „częściowo usunięty”: nie ma już pozycji w katalogu, ale nadal jest otwarty w pewnym procesie, więc dane są nadal obecne na dysku. Gdy ostatni proces, w którym ten plik jest otwarty, zostanie zamknięty, plik zostanie całkowicie usunięty, a osierocony i-węzeł zniknie.
Osieroconego iwęzłów zastosowania zarówno iwęzłów i przestrzeni na dysku, aby zapisać plik, tak jak
df
idf -i
liczyć je jako używane. Zatem jeśli dysk jest zgłaszany jako pełny, aledf
pokazuje trochę wolnego miejsca, nie można tego powiązać z osieroconymi i-węzłami. Osierocone i-węzły są jednym z powodów, dla których zgłaszane użycie systemu plikówdf
i całkowity rozmiar pliku zgłaszany przezdu
mogą się różnić; zobacz Dlaczego istnieje tak wiele różnych sposobów pomiaru zużycia dysku? po więcej szczegółów na ten temat.Wiele systemów plików zarezerwowało stałą liczbę i-węzłów podczas tworzenia systemu plików, co oznacza, że możesz mieć maksymalnie tyle plików w systemie plików. Liczba i-węzłów stanowi kompromis między przestrzenią zajmowaną przez i-węzły a możliwością tworzenia wielu plików. Jeśli w systemie plików nie ma już miejsca, nie możesz powiększać istniejących plików ani tworzyć nowych plików (być może nadal możesz tworzyć puste pliki w istniejących katalogach, o ile wypełniają one tylko częściowo używane bloki, a nie wymagające przydzielenia nowego bloku). Jeśli nie ma już wolnego i-węzła, możesz powiększać istniejące pliki, ale nie możesz utworzyć nowego pliku.
Jądro zgłasza ten sam błąd aplikacjom, czy system plików jest pełny z powodu braku miejsca na dane lub z powodu braku i-węzłów. Możesz więc otrzymać błąd „dysk pełny”, nawet jeśli pozostało trochę miejsca na dane, jeśli operacja wymagała nowego i-węzła, a tabela i-węzłów jest pełna. Uruchom,
df -i
aby dowiedzieć się, ile użytych i-węzłów jest używanych.źródło
Osierocony i-węzeł to taki, który został odłączony, ale nadal jest otwarty w innym procesie. Na przykład działa
tail -f {file}
w jednej powłoce, a następnierm {file}
w innej. System plików śledzi je, aby można je było wyczyścić po zakończeniu procesu.Jest to całkowicie normalne, gdy masz nieczystego zsiada. Są to po prostu pliki, które zostały usunięte, ale nadal były otwarte, gdy fs został ponownie zamontowany tylko do odczytu. Nie są przyczyną, a jedynie objawami.
W przypadku problemu z i-węzłem uruchom to zapytanie, aby uzyskać listę ilości i-węzłów używanych we wszystkich katalogach
Więcej informacji na ten temat można znaleźć w tym i tym .
źródło