Давным-давно, когда на компьютерах безраздельно властвовала Windows XP, для разбиения диска на разделы приходилось использовать потусторонние силы сторонние утилиты. С тех пор многое изменилось, в современных операционных системах Windows появились встроенные средства для управления дисками а сам процесс разбиения превратился в простейшую операцию, не требующую особых навыков. Но иногда что-то может пойти не так…
Ситуация следующая: имеется диск размером 800Гб. Диск занят менее чем на 50%, в связи с чем планируется уменьшить его размер до 400Гб, т.е. ровно вполовину.
Открываем оснастку «Disk Management», проверяем текущий размер диска и наличие на нем свободного места. Затем кликаем на диске правой клавишей и в контекстном меню выбираем пункт «Shrink Volume».
Запускается проверка и через некоторое время выдается окно, с помощью которого можно скорректировать текущий размер диска. Как видите, максимальный размер, который можно отрезать от диска, составляет 506531Мб (494,66Гб), т.е. при обрезке диска до 400Гб проблем возникнуть не должно. Теоретически.
Указываем желаемый размер, жмем кнопку «Shrink», ждем некоторое время. И получаем ошибку, в которой говорится о нехватке свободного места.
Подобная ошибка может возникнуть в том случае, если на диске имеются файлы, не подлежащие перемещению. Как правило это служебные файлы, например файл подкачки, файлы восстановления системы и т.п. Эти файлы располагаются посреди свободного пространства и препятствуют уменьшению размера диска.
Для того, чтобы разобраться в ситуации, открываем оснастку «Event Viewer» и ищем в логах приложений (Application) события от источника Defrag с кодом 259.
Для более подробного анализа можно воспользоваться утилитой fsutil. Так следующая команда покажет, что именно за файлы мешают обрезке диска:
fsutil volume querycluster E: 0x4719724
Здесь 0x4719724 — это номер кластера на диске, на котором располагается файл, взятый из сообщения в логе. В результате команды мы получим данные файла:
-S—D \$BitMap::$DATA
Результат повторяет данные, полученные из лога, что не особо упрощает ситуацию. Поэтому выведем справку по команде:
fsutil volume querycluster /?
Согласно справке, атрибуты -S—D означают служебные файлы системы NTFS (NTFS System Metadata File).
Итак, мы выяснили, в чем проблема, остается ее решить. Одно из наиболее простых решений — попробовать освободить место с помощью оптимизации диска. Для этого надо в свойствах диска открыть вкладку Tolls — Optimize, выбрать диск и нажать «Optimize». Для лучшего результата оптимизацию надо запустить несколько раз.
После оптимизации надо попробовать обрезать диск еще раз. Скажу сразу, что оптимизация работает далеко не всегда, но в моем случае все получилось.
Если же данный способ не работает, то можно попробовать предпринять следующие действия:
• Отключить на компьютере спящий режим;
• Отключить восстановление системы;
• Отключить для диска файл подкачки.
Ну и на крайний случай, если больше ничего не помогает, то можно, как в старые времена 🙂 воспользоваться сторонним ПО. Например таким, как EaseUS Partition Master или Acronis Disk Director.
Спасибо, помогла оптимизация, с первого раза!