Как я могу сжать раздел Windows 10?


74

Я использую большой одиночный раздел на диске размером 1 ТБ с Windows 10. Я хотел бы уменьшить размер раздела, чтобы можно было отразить диск на меньший, но более быстрый SSD на 256 ГБ.

Я купил диск, не планируя много. (Упс.) Я увидел, что я использую только 195 ГБ, и подумал: «Черт, почему бы мне не ускорить это?»

введите описание изображения здесь

Но после (очень трудоемкой) дефрагментации / оптимизации с использованием инструмента Windows 10 «Оптимизация дисков» кажется, что я могу сжаться только до ~ 488 ГБ.

введите описание изображения здесь

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

Как я могу уменьшить минимальный размер раздела? (т.е. "Общий размер после сжатия"?)


Дефрагментируйте все! Загрузите работающую ОС, а затем выполните дефрагментацию каждого файла и объедините весь диск в начало. Что вам нужно, так это свободного пространства между файлами, чтобы все содержалось в одном большом блоке данных.
GiantTree

Временно отключите режим гибернации, файл подкачки, восстановление системы, затем выполните дефрагментацию / компакт-диск C, затем попробуйте уменьшить, если он достаточно мал, зеркально отразить раздел C, включить страницу, режим гибернации, восстановление системы после загрузки на новый диск.
Моав

3
функция сжатия файла diskmgmt.msc очень плохая. Вы должны использовать хороший редактор разделов, такой как Partition Wizard или EaseUS Partition Master , они могут уменьшить раздел до минимального размера
phuclv

1
Я бы действительно подумал, что должно быть на диске, прежде чем сделать что-то подобное. 195gb немного реже, и большинство людей в конечном итоге имеют кучу мусора в своих системах. Весна чистая первая!
Подмастерье Компьютерщик

2
Хотя я получаю призыв не использовать сторонние решения, я не могу не думать о том, что вставлять «gparted» на небольшую флешку, загружать с нее компьютер, а затем использовать его для сокращения раздела кажется чертовски быстрым, чем фейффинг вокруг отключения гибернации, файла подкачки и защиты системы, перезагрузки, сжатия, повторного включения их и последующей перезагрузки.
Ричард

Ответы:


88

Кажется, совершенно не нужно никакого стороннего программного обеспечения .

Я следовал приведенным здесь инструкциям и успешно сжал раздел ОС примерно за 10 минут. Запуск под Windows 10, но я сомневаюсь, что это имеет значение здесь.

Шаги:

  1. Отключить спящий режим.

    В командной строке с повышенными правами (admin) выполните команду

    powercfg /h off
    
  2. Отключить файл подкачки.

    Откройте страницу «Система» в панели управления (из «Этот компьютер» / «Мой компьютер» откройте «Свойства»). Нажмите «Дополнительные параметры системы», затем на вкладке «Дополнительные» диалогового окна «Свойства системы» откройте параметры «Производительность», перейдите на вкладку «Дополнительные», нажмите «Изменить ...» в разделе «Виртуальная память», снимите флажок « Автоматически управлять размером файла подкачки для всех дисков », выберите диск, который хотите сжать, выберите« Нет файла подкачки »и нажмите кнопку« Установить ».

  3. Отключить защиту системы.

    В диалоговом окне «Свойства системы», как указано выше, перейдите на вкладку «Защита системы», нажмите «Настроить ...» и выберите «Отключить защиту системы».

  4. Запустить снова.

Теперь три файла, которые препятствовали сокращению раздела, исчезли. Уменьшите размер раздела, а затем восстановите три элемента.

Если Управление дисками жалуется, что «на диске (ах) недостаточно места для выполнения этой операции». Даже если вы ввели размер, который должен работать в соответствии с собственными данными Управления дисками, см. Невозможно сжать раздел C: раздел: Недостаточно места

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


Используйте на свой страх и риск - но мне также пришлось удалить все тени VSS, потому что в журнале событий сказано, что последним неподвижным файлом был C: \ System Volume Information \ {guid} {guid} :: $ data
crokusek

О боже, спасибо вам большое. Очень рад, что мне не пришлось использовать GParted (не нуждался в переустановке, в прошлый раз я использовал его, но, тем не менее, я был немного осторожен).
User1291

Я выполнил эти шаги, и мой диск C по-прежнему показывает 5000 МБ, доступные для сжатия, когда у меня есть ~ 120000 свободного места, какие еще шаги / рекомендации в этом случае?
edencorbin

1
Только добавив этот комментарий, чтобы сохранить нажав ссылку выше "не может сжаться". После попыток выше все равно не получилось, поэтому я просто сжал диск тремя меньшими приращениями, чтобы достичь желаемого размера.
Бритт Андерсон,

1
@mistery_girl - Это, возможно, стоит другого вопроса в SU.
sancho.s

29

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

Я использовал этот метод, чтобы успешно уменьшить системный том (C :) на Windows Server 2012R2 с 500 ГБ (только с 50 ГБ фактических данных) до 80 ГБ. В первый раз, когда я попытался изменить его размер, минимальный размер был около 425 ГБ.

Совет: если ваш том не системный, вы можете пропустить начальные шаги (до перезапуска)

  • Откройте приглашение Powershell с правами администратора.

  • Во-первых, отключите настройки, которые могут сохранять неподвижные файлы

    • Отключить файл подкачки

      wmic computerystem set AutomaticManagedPagefile = False
      wmic pagefileset где name = "C: \\ pagefile.sys" удалить
      
    • Отключить спящий режим (только для Windows на рабочем столе)

      отключение питания / ч
      
    • Отключить восстановление системы (только для Windows на рабочем столе)

      Disable-ComputerRestore -Drive C:
      
    • Перезагрузите компьютер

  • Defrag (эквивалентно defrag C: /L /D /K /G /H)

    Optimize-Volume -DriveLetter C -ReTrim -Defrag -SlabConsolidate -TierOptimize -NormalPriority
    
  • Получить оставшийся размер в ГБ

    (Get-Volume C) .SizeRemaining / 1GB
    374,10312271118 # Пример результата!
    
  • Изменить размер раздела (используйте указанное выше значение плюс 2 ~ 3 ГБ)

    $ part = Get-Partition -DriveLetter C
    $ part | Resize-Partition -Size 375GB
    
  • Получите оставшийся размер снова. Resize-Partition уменьшил его.

    (Get-Volume C) .SizeRemaining / 1GB
    278,10312271118 # Магия!
    
  • Промойте и повторяйте, пока не достигнете желаемого размера.

  • Наконец, восстановите настройки компьютера

    • Включить файл подкачки

      wmic pagefileset create name = "C: \\ pagefile.sys"
      wmic computerystem set AutomaticManagedPagefile = True
      
    • Включить спящий режим (только для Windows на рабочем столе)

      powercfg / h вкл
      
    • Включить восстановление системы (только для Windows на рабочем столе)

      Enable-ComputerRestore -Drive C:
      
    • Перезагрузите компьютер


На Windows 10 после выполнения Disable-ComputerRestore -Drive C:я получаю ошибку 'Disable-ComputerRestore' is not recognized as an internal or external command, operable program or batch file..
Марко Лацкович

Некоторые из этих команд не работали для меня. Например, я не мог удалить файл подкачки с помощью приведенной выше команды. Вместо этого мне пришлось сделать это, пройдя через «Расширенные настройки системы». Кроме того, параметр / K для дефрагментации был недоступен на моем компьютере, поэтому я просто исключил этот флаг. Наконец, мне пришлось удалить все мои точки восстановления, прежде чем я смог сжать диск. В противном случае просто ....
bremen_matt

Я выполнил шаги принятого ответа, а затем продолжил выполнение этих инструкций для Win 10v1703 на 500G SSD. Я не смог выполнить команду полной оптимизации и вместо этого просто дал аргумент дефрагментации. Кроме того, я Resize-Partitionне позволил бы сократить раздел до 100G, который я хотел (только с использованием ~ 34G), поэтому я решил использовать DiskPart. После паники из-за первой загрузки, которая вызвала Missing Operating Systemошибку, я успешно перезагрузился в систему.
кстианской

4
Для всех, кто получает сообщение о том, что команды не распознаны (или недоступны), обратите внимание, что ответ говорит: откройте приглашение PowerShell с правами администратора (руководство по PowerShell здесь: computerperformance.co.uk/powershell/index. хтм ) Это не то же самое, что обычное приглашение cmd. Просто найдите в меню «Пуск» «Windows PowerShell», и вы найдете его. Я не тестировал команды, но учтите, что некоторые команды для PowerShell v.3 + недоступны для PowerShell v.2-.
Flen

7

Ответ @ sancho.s работает, но я оставлю это здесь на тот случай, если кто-то ищет более быстрый подход и будет доволен сторонними инструментами.

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

В соответствии с рекомендациями @ LưuVĩnhPhúc, я использовал этот (бесплатный) менеджер разделов , поэтому мне не нужно было выполнять дефрагментацию. Просто запустите инструмент, поставьте в очередь задание на раздел и перезагрузите компьютер:

  1. Запустите инструмент, щелкните раздел, чтобы изменить его размер, и нажмите «Переместить / изменить размер»:

    enter image description here

  2. Установите размер и нажмите ОК:

    enter image description here

  3. Примените изменения!

    enter image description here

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

    enter image description here


1
Он говорит мне, что мой диск (на SSD) слишком фрагментирован, чтобы сжиматься, программа «Оптимизировать диски» в Windows не помогает.
Draex_

2

Ничто из вышеперечисленного не помогло мне - дефрагментатор показал пару десятков файлов в самом конце диска, которые я не мог переместить. Единственным способом было использовать AOMEI Partition Assistant ( https://www.disk-partition.com/articles/shrink-volume-with-unmovable-files-4348.html ) - работал отлично. Он загружает приложение предварительной загрузки, которое запускается после перезагрузки, и выполняет эту работу - очевидно, некоторые системные файлы не могут быть затронуты из работающей системы.


4
Добавьте соответствующие части вашей ссылки в тело ответа. Если ссылка гниет, ваш ответ станет устаревшим.
Притт Балагопал

2
Извините, я не понимаю. Вся необходимая информация есть - используйте AOMEI Partition Assistant, потому что я не нашел другого способа перемещения неподвижных файлов, и ни один из приведенных выше ответов не помог.
sun2sirius

1

Ключевым моментом является эта часть информационного сообщения, которое вы разместили:

Вы не можете уменьшить громкость выше точки, в которой находятся неподвижные файлы.

Из Microsoft сжимают основной том :

Дополнительные соображения

  • При сокращении раздела некоторые файлы (например, файл подкачки или область хранения теневой копии) не могут быть автоматически перемещены, и вы не можете уменьшить выделенное пространство за пределами места, где расположены неподвижные файлы. Если операция сжатия завершается неудачно, проверьте Журнал приложений для события 259, который определит неподвижный файл. Если вам известен кластер или кластеры, связанные с файлом, который запрещает операцию сжатия, вы также можете использовать команду fsutil в командной строке (введите fsutil volume querycluster /? Для использования). Когда вы предоставляете параметр querycluster, выходные данные команды будут определять неподвижный файл, который препятствует успешному завершению операции сжатия.

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

  • Если число сбойных кластеров, обнаруженных динамическим переназначением сбойных кластеров, слишком велико, вы не сможете сжать раздел. Если это происходит, вам следует рассмотреть возможность перемещения данных и замены диска.

    Не используйте копию уровня блока для передачи данных. Это также скопирует таблицу поврежденных секторов, и новый диск будет относиться к тем же секторам как к плохим, даже если они нормальные.

  • Вы можете сжать первичные разделы и логические диски в необработанных разделах (без файловой системы) или разделах, используя файловую систему NTFS.

Вы должны сначала проверить, Application Logкак указано. Если неподвижный файл является файлом подкачки, вы можете попытаться (временно) переместить его на другой диск, а затем повторите попытку сжатия. Тем не менее, если есть другие неподвижные файлы, которые предотвращают сжатие, которые вы не можете удалить / переместить, то вы не сможете сжать с помощью встроенного средства. В этом случае вам нужно будет использовать сторонний инструмент для создания разделов / обработки изображений - существуют как бесплатные, так и платные такие инструменты.


Спасибо за ответ! Хотя это определенно сработало бы, может потребоваться много времени, чтобы итеративно дефрагментировать и перемещать неподвижные файлы, пока diskmgmt.mscбоги не будут достаточно довольны. В итоге я использовал менеджер разделов времени загрузки для перемещения неподвижных файлов до того, как они были заблокированы.
kdbanman

Сжатие может быть выполнено с помощью встроенных функций (нет необходимости в стороннем программном обеспечении) и очень легко. См superuser.com/a/1060508/245595
sancho.s


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

1
@dxiv согласился, весь - таки я думаю , что многие люди в наше время могут выглядеть на названии только вопрос и прыгать здесь, так что может быть стоит упомянуть
матовые

1

Используйте бесплатную AOMEI Partition Assistant Standard Edition

Я решил дать этой идеальной утилите для лучшей работы, чтобы повысить ее популярность.

Он может сжать раздел за пределы того, что занято (на текущем системном диске) «неподвижными» (= используемыми) файлами, в то время как diskmgmt.msc( управление дисками ) не предоставляет возможности для этого.

Я записал это более подробно, потому что мне плохо от того, что люди тратят драгоценное время вручную, следуя инструкциям вроде

  1. Отключить файл подкачки.
  2. Отключить спящий режим.
  3. Отключить защиту системы.
  4. Отключить дамп памяти ядра

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

Мне удалось сжать накопитель (nvme ssd) до более или менее точного размера, который я использую (от 200 ГБ до 140 ГБ), за 5 минут, включая исследование темы, установку этого решения и его выполнение. Самое главное, что у меня не было , чтобы узнать что - нибудь о типичных больших неподвижных файлов в Windows , которые я не заботиться о вообще .

Вы запускаете программу, выбираете раздел, который хотите сжать (я полагаю, это ваш системный раздел / том C :), затем перетащите ползунок, чтобы установить желаемый размер. Поскольку диск используется, процесс изменения размера будет настроен как программа Windows PE (среда предустановки) , выполнение которой планируется при следующей загрузке.

Вот их инструкции, включая изображения, чтобы увеличить размер этого поста:

  1. Загрузите, установите и запустите это бесплатное программное обеспечение для управления разделами .

  2. Щелкните правой кнопкой мыши на разделе или томе, который нужно сжать, и выберите «Изменить размер раздела». введите описание изображения здесь

  3. На следующем экране перетащите ползунок влево, чтобы уменьшить раздел. введите описание изображения здесь

  4. Нажмите OK, чтобы просмотреть макет раздела. Если нет проблем, нажмите Применить, чтобы запустить операцию.

> Применить

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

Отказ от ответственности: Если вы измените размер C :, потребуется перезагрузка, и программа будет выполнена один раз в среде Windows PE, которая представляет собой рабочий стол с уменьшенным размером окон, который может показаться вам не очень красивым, но он выполняет свою работу.

Дальнейшие ссылки:

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


Не смотрите дальше, чем этот ответ;)
masterxilo

0

В моем случае, следование приведенным выше инструкциям не удалось. Почему-то я все еще не могу сжать диск. Что мне помогло, так это перезапустить Windows в безопасном режиме (удерживая Shift и выбрать перезагрузку) В безопасном режиме перейдите в расширенный режим и перейдите в командную строку. Используйте, diskpart.exeчтобы сжать диск:

list volume 
select volume <volume number>
shrink [desired=<desiredsize>] [minimum=<minimumsize>]

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

Не забудьте включить их после уменьшения громкости.


0

Важный момент. Если вы перепрофилируете, особенно при использовании стороннего инструмента или для установки linux, заранее сделайте резервную копию ключей битлокера . Я успешно сжал свой раздел Windows и установил Linux, но в следующий раз, когда я попытался загрузить Windows, он потребовал ключи / коды восстановления битлокера.

К счастью для меня, ИТ-специалисты ранее создавали резервные копии кодов битлокера на этом корпоративном ноутбуке. Поскольку мы не используем учетные записи Microsoft для входа в систему, не было облачной резервной копии, к которой я мог бы получить доступ, поэтому я был бы SOL!


-1

В дополнение к шагам, изложенным Санчо выше:

  1. Отключить спящий режим. Запустить снова.
  2. Отключить файл подкачки. Запустить снова.
  3. Отключить защиту системы.
  1. Выполните очистку диска, чтобы удалить старые файлы резервных копий.
  2. Используйте внешний инструмент дефрагментации defraggler (от piriform, те же люди, которые делают speccy). Это переместило файлы, предотвращающие сокращение раздела. По какой-то причине встроенный инструмент дефрагментации Microsoft не перемещает их.
  3. Если это не позволяет вам изменить размер массового раздела, вы можете попробовать сделать постепенное уменьшение. например, сжатие 50 ГБ, 2 x 25 ГБ или 10 x 5 ГБ.

-1

Важная информация для тех, кто борется за сокращение раздела, даже принимая все меры, упомянутые в принятом ответе.

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

Ищите решение ниже.

Очевидно, что вы можете использовать стороннее программное обеспечение, которое я также пытался использовать, но в большинстве случаев бесплатные версии позволят вам уменьшаться только при запуске системы - за загрузочные версии в большинстве случаев вам придется платить.

Прежде чем начать, запомните важные вещи:

  • Не обрабатывайте свой SSD-диск какими-либо инструментами дефрагментации, потому что вы можете повредить его или сократить срок его службы.
  • Прежде чем начать играть с инструментами разделов, сделайте резервную копию важных данных.

ФОН:

В моем случае под управлением Windows 10 на SSD-накопителе я выполнил все шаги, упомянутые в этом руководстве , а именно:

  1. Отключить файл подкачки.
  2. Отключить спящий режим.
  3. Отключить защиту системы.
  4. Отключить дамп памяти ядра
  5. Перезагрузите систему.

Это не сработало. Я также выполнил процесс оптимизации раздела, но он также не работал. Я продолжаю получать сообщение:

Вы не можете сжать том за пределы места, где находятся неподвижные файлы

Я также пытался MiniTool Partition Wizard Free, однако, как упоминалось выше, я не смог сжаться во время работы системы. Меня попросили перезагрузить, но приложение зависло. К счастью, я смог отменить процесс без потери данных - система загрузилась нормально. Одним из предложений было использование загрузочной версии, которая не является бесплатной. Поэтому я выкопал больше и нашел решение.

РЕШЕНИЕ:

Можно получить информацию о том, что является последним неустранимым файлом, который мешает процессу сжатия. Просто вам нужно запустить Event Viewer .

  1. Меню Пуск> Выполнить> eventvwr.msc
  2. В левой панели выберите «Журналы Windows»> «Приложение».
  3. Проверьте информацию о последних событиях Defrag, чтобы узнать, что является последним неустранимым файлом.
  4. Удалить файл. Если файл каким-то образом связан с системой и защищен, Google для решения с именем файла в качестве запроса.
  5. Повторите попытку сокращения раздела.

введите описание изображения здесь

Если вам это удастся, не забудьте:

  1. Включить файл подкачки.
  2. Включить гибернацию.
  3. Включить защиту системы.
  4. Включить дамп памяти ядра

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

Я нашел решение там и делюсь им здесь, надеюсь, это поможет большему количеству людей.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.