PermLUG
|
Пермская группа пользователей Linux |
|
ОблакоВход для пользователейНавигация |
Дефрагментация![]() Закончилось место на разделе с данными. Прикупил диск побольше размером. Решил разметку делать. Выбрал после долгих метаний и анализов за файловую систему ext3 (во-первых, потому что всегда пользовался ext2/3, и она меня не подводила [тьфу x 3], во-вторых по отзывам). И тут у меня всплыла старая мысля на счет фрагментированности данных будущих на разделе... Почти весь день провел в экспериментах и чтении статей. Заливал переносимые данные на новый диск, удалял их, снова заливал... После каждой операции делал 126038 inodes used (0.28%) | 163249 inodes used (0.37%) 2017 non-contiguous inodes (1.6%) | 2437 non-contiguous inodes (1.5%) 52589072 blocks used (29.60%) | 67262691 blocks used (37.86%) 5 large files | 5 large files Видим, что фрагментация не слишком велика, хотя есть (после второго прохода После этого я решил повторить процедуру, но при этом я сначала залил несколько больших файлов (образы DVD по 1-4,4Gb), а потом немного маленьких (пакеты). 20524 inodes used (0.05%) 369 non-contiguous inodes (1.8%) 5 large files Здесь относительная фрагментация больше (но это результат несоответствия параметров экперимента). Если заполнить разделы по такому же принципу, но теми же самыми файлами, то фрагментация уменьшится (не верите -- проверьте ;-) ). Циферки, конечно же, относительные (процент фрагментов на общее число инодов), и согласно правилам проведения эксперимента далеко не отражают действительность (уж извините, но на каждый вид действия минимум по 3 серии с различными условиями я не выдержал бы :-P ). Это то, что касается упреждения дефрагментации при заполнении раздела. Теперь, как бороться, если уже есть файлы, а фрагментация приличная. В сети находится множество отзывов и статей по теме. Большинство говорят, что дефрагментация не нужна, т.к. система записи на диск "интеллектуальная", в отличии от fat и Ко, которые пихают данные в первые замеченные свободные блоки. Планировщики стараются расположить данные на диск оптимально. Но, допустим, Ваш раздел заполнен маленькими файлами, а Вы решили записать на диск образ DVD. Для этого были выбраны "самые несчастные" и удалены. Но они были расположены по диску с переменной плотностью. В итоге свободного места достаточно для записи, но файл будет в любом случае фрагментирован. Можно не допускать такого поведения, если заранее выделить свободное место на диске (что вообщем-то и делает Встретил даже такое мнение, что некторые unix-администраторы считают полезной фрагментацию для многопользовательских многопоточных процессов. Теоретически с этим можно согласиться, т.к. в один момент процесс 1 читает данные в начале раздела, тут планировщик передает приемущество использования железа процессу 2, а он желает прочитать другой файл. Желательно для быстродействия, чтобы его части этого файла были "размазаны" от начала раздела. Но это очень идеализированный случай, на практике все совсем сложнее: предугадать и разместить части файла под каждую операцию невозможно. Для моего случая данные будут не слишком фрагментированы (надеюсь :-) ), т.к. они в основном статичны. Ну а если это порты Gentoo неусмотрительно расположенные вместе с ftp для заливки фильмов? Опять же по данным форумов, фрагментация в таком случае может достигать 50% (а то и более). В этом случае поможет Вы может и не поверите, но самым простым способом для дефрагментации данных является... Напоследок хочется сказать, что вместо Links: P.S. В конце концов решил особо не заморачиваться, да и устал немного :-). Залил все данные, в итоге получилось: 161601 inodes used (0.36%) 4716 non-contiguous inodes (2.9%) 76630040 blocks used (43.14%) 5 large files Фрагментация выражена не ярко, при том, что в этот раз я активно манипулировал с файлами: копировал, перемещал, удалял. Ждем Ext4. Из плюшек там заявлено автоматическое упреждение фрагментации.
|
Новые записи в блогахАктивные обсуждения форума
|
| Пермская группа пользователей Linux, 2003—2008 |