Jak mogę utworzyć partycję EXT4 z bardzo dużą liczbą i-węzłów?

15

O i-węzłach

W Ubuntu każdy plik i katalog jest tak zwany inode. Możesz użyć df -ido sprawdzenia liczby używanych i-węzłów i dostępnych dla wszystkich zamontowanych systemów plików.

Pytanie

Jeśli tworzysz nową partycję EXT4, używa ona domyślnej liczby i-węzłów, która w normalnych warunkach powinna być wystarczająca. Jeśli jednak używasz systemu, który produkuje miliony małych plików, jak musisz utworzyć nową partycję EXT4 z bardzo dużą liczbą i-węzłów? Jakie jest maksimum?

Komentarze

  • NIE można zmienić liczby dostępnych i-węzłów PO utworzeniu partycji EXT4
bzero
źródło
@Rinzwind To nie to samo pytanie, ponieważ pyta tylko, jak znaleźć dużą liczbę małych plików ... nie wyjaśnia, jak sformatować nową partycję EXT4 z bardzo dużą liczbą i-węzłów. Ponownie otworzę moje pytanie.
bzero
Jak mogę wyłączyć ten górny baner, informując, że odpowiedź na to pytanie była już możliwa? To jest inne pytanie.
bzero,

Odpowiedzi:

12

Używając mkfs -t ext4 -N iNumberOfINodes /dev/XdYgdzie iNumberOfINodesjest liczbą 32-bitową, więc maksymalna możliwa liczba i-węzłów w dowolnym systemie plików ext2 / 3/4 wynosi 2 ^ 32-1 lub 4 294 967 295 (~ 4 miliardy).

Fabby
źródło
5
Czy są jakieś znane wady wydajności podczas konfigurowania 4 000 000 000 iNodes?
bzero
1
właściwie to nie jest: mkfs.ext4: za dużo i-węzłów (4294967296), podaj <2 ^ 32 i-węzłów
dalej
@dalore off-by-one error: 2 ^ 32-1 ... Dzięki za informację
zwrotną
Uwaga: próbowałem również tego, ale otrzymałem kolejny błąd, który nie był zbyt pouczający co do tego, jaki numer jest akceptowany.
dalej
próbowałeś 2 ^ 31 ???
Fabby
3

Zobacz stronę podręcznika dla mkfs.ext4.

man mkfs.ext4

Opcja -Npozwala ustawić liczbę i-węzłów tworzonych w systemie plików, a opcja -Ipozwala zwiększyć ich rozmiar (aby mogły obsługiwać bardziej rozszerzone atrybuty plików). Dostosuj do swojej sytuacji podczas tworzenia systemu plików.

ubfan1
źródło
Dzięki, więc -N jest używany w czasie tworzenia, podczas gdy -l może być używany do regulacji liczby i-węzłów PO utworzeniu partycji?
Przyjrzę się
-IZmienia rozmiar w bajtach każdego węzła w czasie tworzenia. Nie pozwoli ci to zwiększyć dostępnej ich liczby w istniejących systemach plików.
TwoD
"allows you to increase their size (so they can handle more files)"Zwiększenie rozmiaru i-węzła nie oznacza, że ​​możesz obsłużyć więcej plików, im większy stosunek bajtów do i-i-węzłów, tym mniej utworzonych i-węzłów, co oznacza, że ​​można obsłużyć mniej plików.
ZN13
1

Zawsze jest to kompromis między i-węzłami a rozmiarem bloku. Maksymalna liczba bitów to 32 bity, ale rzeczywista wartość maksymalna zależy od rozmiaru dysku / systemu plików podzielonego przez rozmiar bloku. Każdy plik ma co najmniej jeden blok. Możesz także określić rozmiar grupy, który określa liczbę bloków na i-węzeł. (tj. bajty / i-węzeł)

Wszystko to określi liczbę i-węzłów, które można przydzielić dla określonego rozmiaru dysku i rozmiaru bloku.

Jest to także kompromis między wydajnością a pojemnością plików. Mniejszy rozmiar bloku oznacza, że ​​duże pliki zostaną pofragmentowane i wymagają więcej operacji we / wy, aby załadować plik.

Jeśli chcesz dostosować, musisz przeczytać lub w przeciwnym razie otrzymasz system plików całkowicie nieodpowiedni do tego, co chciałeś.

Ellison Chan
źródło