Fragmentacja pliku polega na zapisaniu jego części w nieprzylegających blokach; linuksowe systemy plików mogą do niej dopuszczać, ale sama jej obecność nie oznacza, że trzeba uruchamiać defragmentację. Znaczenie zależy od systemu plików i obciążenia. W ext4 możesz najpierw ocenić sytuację poleceniem e4defrag -c, które sprawdza pliki bez ich defragmentowania.

W tym artykule

Czy Linux może ulegać fragmentacji?

Tak. Opracowanie poświęcone ext2 opisuje, że wcześniejszy system Ext ulegał fragmentacji, gdy jego listy wolnych bloków i i-węzłów przestawały być uporządkowane. Ext2 grupował powiązane i-węzły oraz dane i przydzielał z góry do ośmiu sąsiadujących bloków, by poprawić lokalność zapisu. W tym historycznym opisie trafność prealokacji wynosiła około 75%, także przy mocno zapełnionych systemach plików. To dane o projekcie ext2, a nie pomiar współczesnego ext4.

Fragmentacja to zatem kwestia układu danych, nie wyjątkowa cecha Windowsa ani coś, czemu Linux jest całkowicie odporny. Przy tradycyjnych dyskach HDD, które mają ruchome elementy, rozproszone bloki mogą oznaczać więcej ruchu głowicy przy odczycie. Czy ma to znaczenie w danym przypadku, zależy jednak od systemu plików i sposobu jego używania.

Jak sprawdzić ext4 bez modyfikowania plików

Demonstracja gotbletu pokazuje sprawdzanie ext4 poleceniem sudo e4defrag -c / i uruchomienie defragmentacji w terminalu

Uruchom e4defrag -c i wskaż plik, katalog albo zamontowany system ext4. Przykładowo e4defrag -c / ocenia system plików zamontowany pod /. Tryb -c oblicza wynik, ale nie defragmentuje celu; opcja -v może dodatkowo pokazać liczbę fragmentów dla poszczególnych plików.

Program przypisuje wynikom własne etykiety: 0–30 oznacza „bez problemu”, 31–55 „lekko pofragmentowany”, a wynik 56 lub wyższy „wymaga defragmentacji”. Są to punkty w skali e4defrag, nie procenty. Wynik pomaga ocenić stan obsługiwanych plików, lecz sam nie przesądza o odczuwalnej poprawie wydajności.

e4defrag działa online na obsługiwanych plikach ext4 korzystających z ekstentów. Nie obsługuje między innymi plików wymiany, plików w lost+found ani plików zapisanych z użyciem bloków pośrednich. Zbyt mało wolnego miejsca lub jego fragmentacja mogą ograniczyć poprawę, a podczas działania narzędzie może konkurować z aktywnymi programami o pamięć i przepustowość dysku.

Narzędzie zależy od systemu plików

Polecenia dla ext4 nie należy przenosić na Btrfs czy exFAT. Te systemy mają własne funkcje i warunki działania.

System plikówFunkcja LinuksaWażny warunek lub ograniczenie
ext4e4defrag -c ocenia fragmentację; e4defrag defragmentuje obsługiwane plikiZa mało lub pofragmentowanego wolnego miejsca może ograniczyć efekt; narzędzie nie obsługuje każdego rodzaju pliku
BtrfsOpcja montowania autodefrag kolejkuje wykryte małe, losowe zapisy o wielkości 64 KiBMoże zwiększać opóźnienie odczytu i nie musi pasować do dużych obciążeń bazodanowych
exFATdefrag.exfat -a ocenia fragmentację bez zmian; narzędzie może też defragmentować woluminWolumin musi być odmontowany; przed działaniem zalecane są kontrola systemu plików i kopia zapasowa ważnych danych
NTFSDokumentacja sterownika NTFS w jądrze Linuksa i NTFS-3G nie opisuje polecenia defragmentacji—

Narzędzie defrag.exfat dodano do exfatprogs w wersji 1.3.0, ogłoszonej 15 października 2025 r. Przed defragmentacją exFAT odmontuj urządzenie, sprawdź je poleceniem fsck.exfat i wykonaj kopię zapasową ważnych danych. Tryb -a służy do oceny bez modyfikowania woluminu.

HDD, SSD i TRIM to różne kwestie

Klasyczny argument za defragmentacją dotyczy dysków HDD: ograniczenie ruchu głowicy może skrócić czas wyszukiwania danych. SSD nie ma ruchomej głowicy ani obrotowych talerzy, więc ten mechaniczny argument nie przekłada się na niego wprost. Defragmentacja plików i TRIM lub discard to odrębne operacje; jednej nie należy traktować jako drugiej.