8

При попытке дефрагментировать том 80 ГБ NTFS (размер кластера 4 КБ) в Windows XP я столкнулся со странной проблемой: процесс дефрагментации очень быстрый, но также и бесполезный. Графически я мог видеть некоторые файлы, перемещающиеся вокруг, но уровень фрагментации остается тем же самым.

Вот как это выглядит после дефрагментации тома:

На снимке экрана показан скриншот дефрагментации Windows в Windows XP с двумя графическими изображениями диска: до и после; оба довольно похожи, и представляют сильную дефрагментацию

Я знаю, что есть 15% свободного места. На самом деле, объем свободен на 23%.

Конечно, Windows Defragmenter показывает кучу файлов, которые он не смог дефрагментировать. Некоторые из них большие (до 1 ГБ), но не слишком большие, чтобы их нельзя было перемещать во время дефрагментации. Не считая, я полагаю, hiberfil.sys и pagefile.sys (они неподвижны, не так ли?).

Как мне диагностировать эту проблему?

PS. Установка других программных продуктов для дефрагментации, как предлагается по аналогичному вопросу, в моем случае не является решением.

5 ответов5

5

У дефрагментатора нет места, куда можно переместить большие файлы: все свободное пространство несколько равномерно распределено на небольшие порции, поэтому улучшения не будет, если $ VERYBIGFILE изменится, скажем, с 20 близких фрагментов до 10 разбросанных по всему куски.

Одним из шагов, выполняемых дефрагментатором, является сжатие файлов, при котором смежные, но отдельные файлы перемешиваются, образуя единый блок данных. Попробуйте выполнить это несколько раз, и со временем все должно стать лучше.

Вы также можете попробовать contig -v somebigfile для дефрагментации файлов один за другим.

4

Попробуйте перезагрузиться в безопасном режиме, а затем отключите как можно больше служб. Открытые файлы не будут перемещаться или подвергаться дефрагментации, поэтому рекомендуется запускать как можно меньше процессов.

Или извлеките диск и установите его (как диск с данными) на другой компьютер для дефрагментации.

1

Вы можете отключить спящий режим, и он должен удалить hiberfil.sys. Если нет, вы можете вручную удалить его, как только гибернация отключена. Вы также можете отключить файл подкачки. После того, как эти два больших недефрагментируемых файла исчезнут, вы можете получить лучшие результаты дефрагментации. Как только это будет сделано, вы можете снова включить файл подкачки и спящий режим. Надеемся, что после дефрагментации тома два других файла будут помещены в смежные файлы.

1

Sysinternals имеет утилиту Defrag Page File. Я не уверен, как он будет работать с диском, расположенным так, как он есть, но, вероятно, стоит попробовать расположить эти большие файлы так, чтобы их стандартная дефрагментация могла более эффективно получить другие файлы.

1

Если дефрагментация в безопасном режиме не помогает, то либо

  • Очистите папки prefetch и superfetch. (Shudder!) Эти папки говорят Дефрагментации не дефрагментировать определенные файлы, что является полной противоположностью того, что вы хотите,

или же

  • Извлеките диск и выполните дефрагментацию, когда он подключен к другому компьютеру. Это гарантирует, что открытых файлов будет как можно меньше, и что Defrag не будет учитывать ваши данные PF.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .