Тема: Что такое дефрагментация файловых систем  (Прочитано 2182 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн moto

  • Выше солнца
  • *****
  • Сообщений: 16992
  • Поблагодарили: 140 раз(а)
  • Уважение: +128/-0
    • Просмотр профиля
Дефрагментация файловых систем

Рано или поздно в процессе работы с компьютером файлы, хранящиеся на винчестере, подвергаются фрагментации. Для упорядочивания врагментов файлов созданны разнообразные утилиты, так называемые - дефрагментаторы.

Фрагментация:
Возникает в результате фрагментации дискового пространства: так как на диске отсутствуют последовательные свободные блоки, то новые файлы невозможно записать целиком в одном месте, их приходится делить на фрагменты и записывать в разных частях диска, что замедляет чтение этих файлов и снижает общую производительность файловой системы. Более того: во многих файловых системах (например FAT32) начало файла записывается в начало кластера, следовательно, если сам файл или его часть по объёму меньше размера кластера, то оставшееся место в кластере остается неиспользованным. Поэтому фрагментированность диска обратно пропорциональна эффективности использования его пространства.

Для ее визуальной оценки в операционной системе Windows есть множество утилит, причем одна из них встроена в Windows. Для оценки фрагментации файлов в операционной системе Linux лично я использую следующий скрипт:
#!/usr/bin/perl -w

#this script search for frag on a fs

use strict;

#number of files

my $files = 0;

#number of fragment

my $fragments = 0;

#number of fragmented files

my $fragfiles = 0;

#search fs for all file

open (FILES, "find " . $ARGV[0] . " -xdev -type f -print0 |");

$/ = "\0";

while (defined (my $file = )) {

         open (FRAG, "-|", "filefrag", $file);

         my $res = ;

         if ($res =~ m/.*:\s+(\d+) extents? found/) {

                 my $fragment = $1;

                 $fragments += $fragment;

                 if ($fragment > 1) {

                         $fragfiles++;

                 }

                 $files++;

         } else {

                 print ("$res : not understand for $file.\n");

         }

         close (FRAG);

 }

close (FILES);

print ( $fragfiles / $files * 100 . "% non contiguous files, " . $fragments / $files . " average fragments.\n");

Называем его, к примеру - fragment.pl , назначаем права на исполнение sudo chmod +x defragment.pl и запускаем:

sudo ./defragment.pl /home
В данном случае скрипт проверит на фрагментацию всю домашнюю директоори, включая всех зарегестрированных в системе юзеров.

Результат:

1.20556827750104% non contiguous files, 1.03430203734743 average fragments. Фрагментация файлов присутствует, но она ничтожна, особенно если учесть что оспользуется компьютер чуть больше полугода.


Исходя из личного опыта могу сказать что процесс дефрагментации в ОС Windows нужен как воздух, потому как файловые системы FAT, FAT32, NTFS мало защищены от фрагментации файлов, поэтому произведенная дефрагментация (хотя бы раз в месяц) не будет лишней.
Но вот в Linux фрагментация как таковая практически сведена к нулю, файловые системы Ext3, RaiserFS и другие более защищены от фрагментации, даже можно сказать больше — они на программном уровне не допускают фрагментации данных. Для тех кто все же решился провести дефрагментацию своего жесткого диска советую скачать бесплатную утилиту для дефрагментации файлов созданную специально для проведения дефрагментации данных в операционной системе Windows.
https://irongamers.ru - сообщество любителей компьютерных игр
 


Оффлайн ИльяСин

  • Новичок
  • *
  • Сообщений: 62
  • Уважение: +0/-0
  • Пол: Мужской
  • Это не я
    • Просмотр профиля
Что такое дефрагментация файловых систем
« Ответ #1 : 01 Июль 2014, 09:00:15 »
Лично я не раз в месяц, но раз в квартал точно, обязательно провожу дефрагментацию жесткого диска, особенно если устанавливал/удалял программы. Не скажу что система намного быстрее работает, но разница чувствуется всё равно.
Возможно всё
 

Оффлайн MPHouse

  • Ученик
  • **
  • Сообщений: 108
  • Уважение: +0/-0
    • Просмотр профиля
Что такое дефрагментация файловых систем
« Ответ #2 : 12 Январь 2015, 16:47:18 »
 Дефрагментация вещь полезная и не так для скорости работы, как для продления срока службы винта. Когда фалы находятся в одном месте, то головка меньше бегает, и следовательно меньше изнашивается. А для твердотельных дисков наверное эта операция не нужна.
 

Оффлайн Noda

  • Советник
  • ***
  • Сообщений: 424
  • Уважение: +0/-0
  • Пол: Мужской
    • Просмотр профиля
Что такое дефрагментация файловых систем
« Ответ #3 : 22 Январь 2015, 11:30:09 »
При сильной фрагментации файлов на диске, считывание данных с него замедляется из-за того, что головкам диска требуется время на перемещение по его поверхности для считывания/записи разных фрагментов одного файла, разбросанного по частям по всему диску. Это ускоряет износ диска.

Поэтому время от времени следует проводить дефрагментацию, но не слишком часто, так как сама дефрагментация также подвергает диск большой нагрузке. Дефрагментировать лучше специальными утилитами типа Defraggler или Auslogics Disk Defrag, так как они позволяют не только дефрагментировать файлы, но и перемещать часто используемые в начало диска, что ускоряет их чтение. Кроме того они в отличие от стандартной утилиты Windows могут производить дефрагментацию во время работы пользователя с компьютером.
"Скачал - удалил, купил бы - удавился!"
Только официальный софт
 

Оффлайн ReNe23

  • Ученик
  • **
  • Сообщений: 174
  • Уважение: +0/-0
    • Просмотр профиля
Что такое дефрагментация файловых систем
« Ответ #4 : 22 Январь 2015, 17:10:07 »
Также хочу отметить, что дефрагментация очень полезна, если у вас на логических дисках находится много файлов.
 


Оффлайн Леонид

  • Ученик
  • **
  • Сообщений: 104
  • Уважение: +0/-0
  • Пол: Мужской
  • На пути к истине
    • Просмотр профиля
Что такое дефрагментация файловых систем
« Ответ #5 : 06 Октябрь 2015, 18:49:09 »
Лично я не раз в месяц, но раз в квартал точно, обязательно провожу дефрагментацию жесткого диска, особенно если устанавливал/удалял программы. Не скажу что система намного быстрее работает, но разница чувствуется всё равно.
Раз в квартал или в месяц мне кажется, что маловато будет. Для того чтобы узнать проводить ли чаще дефрагментацию можно использовать стандартную Виндовскую утилиту. Включить ее и нажать на кнопку «Анализ» и посмотреть на разброс занятого пространства.
На пути к истине
 

 


Поиск

 
SimplePortal 2.3.6 © 2008-2014, SimplePortal