Вообще, вопрос необходимости дефрагментации в
Linux, существовал наверное с самого начала появления
Linux, причем, постоянные споры о том, нужна ли дефрагментация в операционной системе
Linux или нет, остаются актуальными до сих пор. Сторонники дефрагментации яростно отстаивают свои позиции, приводя конкретные доводы, подтверждающие неизбежность этой процедуры, противники же, наоборот утверждают, что в этом действии нет необходимости, т.к. "ОС" «
Linux», якобы практически не подвержена фрагментированию.
На мой взгляд, вполне возможно, что правы и те и другие, ведь возможность фрагментации системы зависит от множества факторов. Присутствие этих факторов у одних, заставляет их быть уверенными в том, что дефрагментация нужна, отсутствие этих факторов у других, создает противоположную убежденность.
Лично я к примеру, никогда не сталкивался с этой проблемой в Linux, общий процент фрагментации никогда не превышал предела в 0.4%. Возможно, что я не совершал чего-то такого, что может вызывать подобный эффект. Но если, подобные эффекты существуют, то вполне закономерно можно утверждать, что дефрагментация все-таки нужна, вопрос только в том, насколько часто?
Единственно-правильным решением в данной сложившиеся ситуации, я считаю, это необходимость иметь весь нужный инструмент, который позволяет сначала определить степень фрагментации, а затем уже ее дальнейшее устранение. Таким образом, каждый самостоятельно сможет определить для себя лично, насколько данная проблема имеет место быть и, если она все же возникает, то как часто с этим придется сталкиваться? У каждого это может быть по-разному, но если смотреть на все глобально, то как ни крути, а в конечном итоге можно сделать однозначный вывод, что фрагментация в Linux, как таковая, имеет место быть. Ну, а раз "оно" имеет свойство появляться, то нужно знать, как этому противостоять.
Выбирать программы для дефрагментации в Linux, практически не с чего, а говорить о графическом интерфейсе вообще не приходится. Наиболее известная утилита, это «e4defrag», которая в собственном исполнении пока еще не существует, но входит в пакет системных утилит для: ext2; ext3; ext4 под общим названием «e2fsprogs». По умолчанию, в Ubuntu 12.04 LTS этот пакет уже установлен, поэтому сразу к делу.
Шаг первый.
1) Сначала нужно определить на каком устройстве (разделе) находится наша корневая система, выполнив команду:
sudo df -h
Получиться должно так или что-то наподобие, здесь главное определить корневое расположение « / ».
В конкретном примере, на снимке видно, что корневой раздел системы находится на /dev/sda6, у вас может быть по-другому, но это не важно, главное найти « / ».
Шаг второй.
2) Теперь определяем, в каком месте находится нужная нам утилита, выполнив команду:
whereis e4defrag
Должны получить примерно следующий результат.
На снимке четко видно, что данная утилита находится в директории: /usr/sbin/.
Шаг третий.
3) Выясняем состояние нашей системы в плане фрагментации.
// Заходим в директорию, где находится дефрагментатор. Дело в том, что любые действия с дефрагментатором, мы можем выполнять только, если находимся в той деректории, где находится сам дефрагментатор, запомните это?!
cd /usr/sbin/
// Определяем степень фрагментации, способ № 1, быстрый для системы в целом.
sudo e4defrag -c /dev/sda6
/dev/sda6 - это то, что мы определили на первом шагу. Получаем такой результат.
Здесь нас интересует предпоследняя строчка: «This device (/dev/sda6) does not need defragmentation», что означает примерно следующее: «Данное устройство (/dev/sda6) в дефрагментации не нуждается». Если у вас будет такая надпись, то можно смело нечего не делать, правда должен сказать, что, как выглядит надпись, когда дефрагментация будет нужна, я не знаю, потому, как ни разу не сталкивался с этой проблемой.
// Определение фрагментации, способ № 2, медленный, сканирует все файлы системы.
sudo e4defrag -v /dev/sda6
Этот метод занимает ровно столько же времени, сколько сама дефрагментация, но зато результат выдает в процентах.
Последняя строчка: «Fragmented percentage» (процентная фрагментированность) - указывает на состояние нашей системы. Здесь на примерах понятно, что никакая дефрагментация не нужна, но мы будем считать, что она нужна и поэтому идем дальше. А вообще, дефрагментацию нужно проводить, когда фрагментированность достигает 5-7% и более.
Шаг четвертый.
4) Дефрагментируем систему.
// Находясь в директории с дефрагментатором: « /usr/sbin/ », запускаем процесс.
sudo ./e4defrag /dev/sda6
Теперь можно смело пойти покурить или зайти к соседке на пару «па». Когда все закончится, можно вновь проверить систему на наличие фрагментов, шаг № 3.
Несколько полезных советов:
1) Перед началом дефрагментации закройте все открытые приложения и по возможности позакрывайте апплеты, которые закрываются, отключите соединение в апплете «Ubuntu One».
2) Во время процесса дефрагментации, не работайте на компьютере.
3) Очень желательно, перед началом всего этого, сделать «бэкап» системы для ее восстановления в случае непредвиденных сбоев.
4) После окончания дефрагментации, перезагрузите систему, можно использовать команду: «sudo reboot».
5) Проверять систему вторично на фрагментированость по завершению дефрагментации, нужно после перезагрузки системы.
Проверялось на Ubuntu 12.04 LTS, Unity (32 bit).