Czy jest jakiś interfejs graficzny do defragmentacji dysku, taki jak Defraggler piriform dla systemu Linux?

16

Szukam narzędzia, które może dać mi wizualną reprezentację mojej fragmentacji ext4. Coś podobnego do tego , jak Defraggler , Puran Defrag i wiele innych (UltraDefrag jest najlepszy) wyświetlają twój dysk ... (większość dobrych interfejsów użytkownika wyświetla pliki w bloku, nad którym przesuwasz kursor myszy)

Czy jest coś związanego z Linuksem?

Chcę obejrzeć mój dysk i zobaczyć, jak naprawdę „niepotrzebna” jest defragmentacja.

Nie chcę używać e4defrag, ponieważ nie jestem pewien, czy pokaże mi, co dokładnie robi z moim dyskiem.

Tcll
źródło
Absolutnie nie ma potrzeby defragmentowania maszyny linuxowej.
ZaxLofful,
7
To nonsens. „Konieczność” defragmentacji zależy od typu FS i wzorca użytkowania. W niektórych przypadkach defragmentacja robi ogromną różnicę. (Myślę, że to jeden z mitów linuksowych)
David Balažic
1
@ DavidBalažic - proszę o odniesienie? Nie widzę potrzeby defragmentacji dysku / systemu plików z fragmentacją 0,2%. Podaj testy porównawcze, aby pokazać, że defragmentacja ext2 / 3/4 / XFS / lub dowolnego macierzystego systemu plików linux znacząco wpływa na wydajność.
Panther
2
@ bodhi.zazen -> „zależy od typu FS i wzorca użytkowania”. W niektórych przypadkach ma duży efekt, w innych żaden. Jeśli te 0,2% to plik bazy danych o pojemności 2 GB, który jest intensywnie używany, będzie miał duży efekt. To kilka małych, rzadko używanych plików, więc oczywiście nie.
David Balažic
1
@ DavidBalažic- Zdefiniuj „duży efekt” i opublikuj testy porównawcze. I / o dysku będzie setki razy bardziej ograniczający niż niewielka fragmentacja, dużo czasu zajmie Ci napisanie bazy danych 2 GB na dysk i zapisanie części pliku 2 Gb nie będzie na fragmentację 0,2%, nadal trzeba ponownie zapisać dane na dysk. Każda intensywnie używana nowoczesna baza danych będzie w pamięci RAM, a jeśli piszesz na dysk, czynnikiem ograniczającym jest pamięć RAM, a nie fragmentacja.
Panther

Odpowiedzi:

23

Pytanie nie brzmi, czy występuje fragmentacja. Wszystkie systemy plików mają pewną fragmentację.

Pytanie brzmi, czy fragmentacja wystarczy, aby wpłynąć na wydajność.

W systemach plików Linux fragmentacja jest zwykle mniejsza niż 5%, często 1 lub 2%, chyba że dysk jest zapełniony w 99%. W przypadku pełnego dysku widać znaczne rozdrobnienie, ale w takim przypadku problemem jest pełny dysk.

$ sudo fsck.ext2 -fn /dev/sda1
e2fsck 1.42 (29-Nov-2011)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Ubuntu_Rescue: 291595/1222992 files (**0.2% non-contiguous**), 1927790/4882432 blocks

Tak, więc istnieje fragmentacja 0,2%, ale jest to znacznie poniżej progu 85%, aby wpłynąć na wydajność.

Zobacz post na blogu Dlaczego Linux nie wymaga defragmentacji? .

W systemie Windows często zdarza się, że fragmentacja wynosi 50% lub więcej (widziałem 200% plus). Dlatego Windows potrzebuje narzędzi do defragmentacji.

W systemie Windows zaleca się defragmentację przy progach około 85%.

Widzieć:

Podsumowując, defragmentacja nie jest wystarczająco dużym problemem w Linuksie, aby wpłynąć na wydajność, więc nie ma znaczących narzędzi do defragmentacji i marnujesz czas na martwienie się o to.

Pantera
źródło
no cóż, mam czas do stracenia, aby wyjaśnić kolejną kwestię dotyczącą tego, więc dzięki, zawsze dobrze jest być sceptycznym;)
Tllll
Intryguje mnie: co oznacza fragmentacja> 100%? Pliki są pofragmentowane wiele razy?
Doddy
@doddy najwyraźniej tak, lub fragmenty są rozdrobnione. Nie znam wystarczająco systemu Windows ani NTFS, aby wiedzieć, w jaki sposób mierzy się fragmentację.
Panther
FWIW - Właśnie dzisiaj (uruchomiłem ten system z aktualizacjami z Fedory 18 -> kilka aktualizacji -> teraz Fedora 22) fsck.ext2 -fn /dev/mapper/fedora-root /dev/mapper/fedora-root: 525176/3276800 files (0.6% non-contiguous) i /dev/mapper/fedora-home: 149180/11149312 files (1.1% non-contiguous)tak niewiele fragmentacji na przestrzeni lat i kilka aktualizacji
Panther
Chciałbym również dodać do dyskusji, że oczywiście żaden system nie trwa wiecznie i bez względu na dysk twardy lub dysk SSD, każdy dostęp do zapisu jest zużyciem z możliwą stratą. Proces defragmentacji jest być może najtrudniejszym procesem dla dysku twardego, w którym wszystkie części są maksymalnie ruchome (odczyt i zapis w różnych sektorach). Jeśli więc wydajność nie zostanie poważnie zmieniona, NIE próbuj na siłę przeprowadzać defragmentacji.
zulu34sx
3

Uprośćmy to ...

1) Jeśli używasz EXT4, nie ma potrzeby defragmentacji, chyba że Twój dysk jest w około 90% zapełniony i ma duże obciążenie IO (usuwanie, odczyt, zapis).

2) Jeśli znajdziesz się w około 90% dysku, który jest mocno pofragmentowany, to twoim problemem jest (IMHO) niewystarczająca ilość miejsca na dysku, a nie fragmentacja. Zdobądź większy dysk!

3) Jeśli nie możesz uzyskać większego dysku z jakiegokolwiek ważnego powodu, po prostu skopiuj całą partię (lub duże fragmenty) na inny dysk, a następnie skopiuj go z powrotem. Zaawansowany EXT4 FS zapisuje go w sposób ciągły, eliminując fragmentację. Można to zaplanować jako zadanie cron.daily za pomocą Gnome Scheduler dla konwersji pochodzących z systemu Windows.

BEST FIX, jeśli masz problem z punktu 2 powyżej, zdobądź większy dysk!

DanglingPointer
źródło
Wciąż chciałbym oglądać fragmentację i zająć się rzeczami, kiedy to się stanie (nie przez terminal, jak wolą większość deweloperów);)
Tcll
dlatego powiedziałem użyć Gnome Scheduler do „kopiowania i przywracania wzoru”
DanglingPointer
3

Nie ma potrzeby defragmentacji w systemach Linux.
Dlatego nie ma wielu dostępnych narzędzi do defragmentacji.

cl-netbox
źródło
3
Nie jestem przekonany, pokaż mi fragmentację pełnego dysku twardego ext4 po 2 tygodniach użytkowania przy ciągłym usuwaniu i dodawaniu plików, z pewnością będzie fragmentacja.
Tcll,
1
Istnieje wiele wyjaśnień online - jedno z nich wyjaśnia to dość precyzyjnie: howtogeek.com/115229/…
cl-netbox
1
Opublikowałem żądaną dokumentację, fragmentacja 0,2% jest trywialna i niewystarczająca, aby wpłynąć na wydajność.
Panther
1
Dla mnie oczywiste następne pytanie brzmi: dlaczego ręczna defragmentacja jest nadal wymagana w systemie Windows po tylu latach? Ale to wyraźnie nie na temat tej witryny. ;-)
Oliphaunt - przywróć Monikę
2
Dwa zdania, oba błędne. Jedno narzędzie do defragmentacji jest wymienione bezpośrednio w pytaniu. Kolejnym jest defragfs . Niektóre powiązane artykuły: Defragmentacja-Linux (linux-magazine.com) , Jak defragmentować system Linux (howtoforge) . Zobacz także to pytanie: unix.stackexchange.com/questions/75652/...
David Balažic