Optymalizacja katalogów w ext3
Napisał: Patryk Krawaczyński
15/02/2008 w Administracja 1 komentarz. (artykuł nr 40, ilość słów: 164)
P
ytanie jest następujące: Używam serwera plików, który jest obsługiwany przez system Linux, a na nim posiadam partycję (/dev/sdb2) na systemie plików EXT3. Jak mogę zwiększyć wydajność mojego serwera? Dodam tylko, że posiadam na nim dużo plików i katalogów o dużej zajętości.
Odpowiedź: Należy użyć narzędzia e2fsck z parametrem -D, który powoduje próbę optymalizacji wszystkich katalogów jak i przez przeindeksowanie ich jeśli system plików obsługuje indeksowanie katalogów oraz przez posortowanie i kompresję katalogów na mniejsze lub użycie tradycyjnych katalogów liniowych. Podnosi to wydajność poprzez używanie pomieszanych drzew binarnych. Wystarczy odmontować partycję (by ewentualne dane nie uległy uszkodzeniu) i uruchomić program e2fsck oraz ponownie zamontować partycję:
# umount /dev/sdb2 # e2fsck -D -f /dev/sdb2 e2fsck 1.39 (29-May-2006) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 3A: Optimizing directories Pass 4: Checking reference counts Pass 5: Checking group summary information /disk2: ***** FILE SYSTEM WAS MODIFIED ***** /disk2: 39/26104 files (17.9% non-contiguous), 20045/104388 blocks # mount /dev/sdb2
Więcej informacji: strona manualna programu e2fsck: man e2fsck
Dla wszystkich nowych katalogów rozwiązanie to można wprowadzić za pomocą polecenia: