Destio небольшой блог

Дефрагментация в Ext4

Раньше часто можно было встретить обширные срачи на тему необходимости дефрагментации в Linux, и, в особенности, самых распространенных ext* систем. Как правило, отсутствие или пренебрежимо малая степень фрагментации были в числе главных преимуществ ФС, отличных от NTFS. Одной из главных причин появления ext2 была как раз зверская фрагментация ext. Ну и в каждой следующей версии немалые старания были направлены как раз на сокращение фрагментации.

В недавнем прошлом, поведясь на россказни о преимуществах ext, я, с помощью ktorrent, за полтора года сделал из 500 ГБ раздела тормозное говно, с которого подтормаживало HD видео, а удаление файлов (так же как и разметка места под новые) происходило со скоростью 1 ГБ в несколько секунд (для сравнения — на новой системе разметка 100 гб происходит секунды за 3). Но это ext3. В ext4 появились дополнительные плюшки для уменьшения фрагментации, но, вот ирония, именно для самой совершенной ext4 сделан штатный дефрагметатор.

Хотя действительно, полностью избежать фрагментации при записи на жесткие диски невозможно, просто раньше у авторов не доходили руки до специальной утилиты, поэтому пользователи дефрагментировали свои харды с помощью такой-то матери и массового копирования. И вот теперь есть e4defrag.

Эта утилита позволяет легко и быстро оценить текущую фрагментацию нужного файла или целого раздела (Быстро узнать обозначения и точки монтирования разделов поможет df -H). Для этого нужно запускать с параметром -c. Например

# e4defrag -c /dev/sda1

После этого программа немного подумает и выдаст результат, вместе с рекомендациями по дальнейшему действию:

Fragmentation score                            2
 [0-30 no problem: 31-55 a little bit fragmented: 56- needs defrag]
 This device (/dev/sda1) does not need defragmentation.

Если с фрагментацией все плохо, нужно запустить просто

e4defrag -v /dev/sda1

для раздела или

e4defrag ~/crap/movies/

для папки.
-v показывает информацию о степени дефрагментации каждого файла.

Дефрагментатор online, но это не потому что у него есть веб-морда, а из-за того что он может делать свою работу “на лету”, без всяких размонтирований.

Дефрагментация

Не стоит доверять Fragmentation score, потому что он считает фрагментацию для всех файлов сразу. Поэтому если на разделе лежат одновременно:
1) сотни тысяч мелких файлов, которые не почти не фрагментируются;
2) несколько больших сильно фрагментированных файлов (мой образ диска виртуалки разбит на 2300 кусков), работать с которыми мучительно неудобно;
Итоговый Fragmentation score будет близок к 0, но проведенная дефрагментация заметна и приятна. Качество работы в основном зависит от свободного места в наличии. Если диск занят на 50–60%, то фрагментация сойдет почти в ноль, но даже на забитом на 95% диске результат налицо.

Дефрагментация может отожрать пару гигабайт памяти (на 3 тб разделе), коих может и нехватить.

Ярлыки: , ,


Ближайшие сообщения:

Похожие сообщения:

Комментарии к этой записи отключены.