Główna » jak » Dlaczego Linux nie wymaga defragmentacji

    Dlaczego Linux nie wymaga defragmentacji

    Jeśli jesteś użytkownikiem Linuksa, prawdopodobnie słyszałeś, że nie musisz defragmentować systemów plików Linux. Zauważysz także, że dystrybucje Linuksa nie są dostarczane z narzędziami do defragmentacji dysku. Ale dlaczego tak jest?

    Aby zrozumieć, dlaczego systemy plików Linux nie wymagają defragmentacji w normalnych warunkach - a te w Windowsach - musisz zrozumieć, dlaczego występuje fragmentacja i jak systemy plików Linux i Windows działają inaczej od siebie.

    Czym jest fragmentacja

    Wielu użytkowników systemu Windows, nawet niedoświadczonych, wierzy, że regularne defragmentowanie ich systemów plików przyspieszy działanie komputera. Wiele osób nie wie, dlaczego tak jest.

    W skrócie, na dysku twardym znajduje się kilka sektorów, z których każdy może zawierać niewielką część danych. Pliki, szczególnie duże, muszą być przechowywane w wielu różnych sektorach. Załóżmy, że zachowujesz wiele różnych plików w swoim systemie plików. Każdy z tych plików będzie przechowywany w ciągłym klastrze sektorów. Później aktualizujesz jeden z oryginalnie zapisanych plików, zwiększając rozmiar pliku. System plików spróbuje zapisać nowe części pliku tuż obok oryginalnych części. Niestety, jeśli nie ma wystarczającej ilości nieprzerwanego pokoju, plik musi być podzielony na kilka części - wszystko dzieje się w sposób przejrzysty. Gdy dysk twardy odczytuje plik, jego głowice muszą przeskakiwać pomiędzy różnymi fizycznymi lokalizacjami na dysku twardym, aby odczytać każdy fragment sektorów - spowalnia to działanie.

    Defragmentacja to intensywny proces, który przenosi bity plików wokół, aby zmniejszyć fragmentację, zapewniając, że każdy plik jest ciągły na dysku.

    Oczywiście jest inaczej w przypadku dysków półprzewodnikowych, które nie mają ruchomych części i nie powinny być defragmentowane - defragmentacja dysku SSD faktycznie zmniejszy jego żywotność. W najnowszych wersjach systemu Windows nie trzeba się martwić defragmentacją systemów plików - Windows robi to automatycznie za Ciebie. Aby uzyskać więcej informacji na temat sprawdzonych metod defragmentacji, przeczytaj ten artykuł:

    HTG wyjaśnia: czy naprawdę musisz defragmentować komputer?

    Jak działają systemy plików Windows

    Stary system plików FAT Microsoftu - ostatnio widziany domyślnie w Windows 98 i ME, choć jest nadal używany na dyskach flash USB dzisiaj - nie próbuje inteligentnie rozmieszczać plików. Po zapisaniu pliku w systemie plików FAT zapisuje się go możliwie najbliżej początku dysku. Po zapisaniu drugiego pliku zapisuje go zaraz po pierwszym pliku - i tak dalej. Kiedy oryginalne pliki powiększają się, zawsze będą się pofragmentować. Nie ma w pobliżu miejsca, w którym mogliby się rozwinąć.

    Nowszy system plików NTFS firmy Microsoft, który trafił na komputery osobiste z systemem Windows XP i 2000, stara się być nieco mądrzejszy. Przydziela więcej wolnej przestrzeni "bufora" wokół plików na napędzie, chociaż, jak każdy inny użytkownik systemu Windows może ci powiedzieć, systemy plików NTFS nadal z czasem ulegają fragmentacji.

    Ze względu na sposób działania tych systemów plików należy je zdefragmentować, aby utrzymać najwyższą wydajność. Microsoft rozwiązał ten problem, uruchamiając proces defragmentacji w tle w najnowszych wersjach systemu Windows.

    Jak działają systemy plików Linux

    Systemy plików ext2, ext3 i ext4 systemu Linux - ext4 to system plików używany przez system Ubuntu i większość innych aktualnych dystrybucji systemu Linux - przydziela pliki w bardziej inteligentny sposób. Zamiast umieszczać wiele plików blisko siebie na dysku twardym, systemy plików Linux rozpraszają różne pliki na całym dysku, pozostawiając między nimi dużą ilość wolnego miejsca. Kiedy plik jest edytowany i musi się rozwijać, zwykle jest dużo wolnego miejsca, aby plik mógł się rozwinąć. Jeśli wystąpi fragmentacja, system plików podejmie próbę przeniesienia plików w celu ograniczenia fragmentacji w normalnym użyciu, bez potrzeby korzystania z narzędzia do defragmentacji.

    Ze względu na sposób działania tego podejścia zaczniesz widzieć fragmentację, jeśli twój system plików się zapełni. Jeśli wypełni się 95% (lub nawet 80%), zaczniesz widzieć fragmentację. Jednak system plików został zaprojektowany w taki sposób, aby uniknąć fragmentacji podczas normalnego użytkowania.

    Jeśli masz problemy z fragmentacją w systemie Linux, prawdopodobnie potrzebujesz większego dysku twardego. Jeśli naprawdę potrzebujesz defragmentacji systemu plików, najprostszy sposób jest prawdopodobnie najbardziej niezawodny: skopiuj wszystkie pliki z partycji, usuń pliki z partycji, a następnie skopiuj pliki z powrotem na partycję. System plików inteligentnie przydzieli pliki podczas kopiowania ich z powrotem na dysk.


    Możesz zmierzyć fragmentację systemu plików Linux za pomocą polecenia fsck - poszukaj "nieciągłych i-węzłów" na wyjściu.