Очистка диска Windows Server 2012

Обновлено: 21.11.2024

Со временем, чем дольше работает ваш Windows Server, тем больше места на диске занимает все больше и больше. Просто ушел! Изучение использования диска оставляет вас в неведении; нет больших файлов журналов, аварийных дампов или программного обеспечения, которое нужно удалить. Куда делось это место?

Ответ: обновления Windows, пакеты обновлений и установка исправлений.

Подсказка: в этом посте также показано, как переместить папку Windows Server SoftwareDistribution и папку «Документы» пользователя в другой раздел.

Очистка WinSxS в Windows Server — с помощью DISM и PowerShell

Освобождение места в Windows Server 2012, 2012 R2, 2016 и Windows Server 2019

Утилита очистки диска Windows cleanmgr недоступна в Windows Server 2012, если не установлена ​​функция Desktop Experience. Это усложняет очистку используемого дискового пространства. Вы можете использовать cmd.exe или командную строку PowerShell, а также использовать систему обслуживания образов развертывания и управления ими (DISM) для очистки хранилища компонентов Windows (WinSxS) в Windows Server 2012 и более поздних версиях.

Папка WinSxS находится в папке Windows, например C:\Windows\WinSxS. Это расположение файлов хранилища компонентов Windows.

Магазин компонентов Windows содержит все файлы, необходимые для установки Windows. И любые обновления этих файлов также хранятся в хранилище компонентов по мере их установки (источник: KB 2795190 — и обязательно прочитайте «Управление хранилищем компонентов»). Папка WinSxS станет большой…

Очистим WinSxS!

Восстановление используемого дискового пространства с помощью
системы обслуживания образов развертывания и управления ими (DISM)

Ритуалы уборки после парада. Изображение с Flickr, автор Пабак Саркар

Очистка диска Dism: система обслуживания образов развертывания и управления ими (DISM) – это инструмент командной строки, который позволяет устанавливать, удалять, настраивать и обновлять компоненты, пакеты, драйверы и региональные параметры Windows. . Параметр /Cleanup-Image программы dism.exe предоставляет опытным пользователям дополнительные возможности для дальнейшего уменьшения размера папки WinSxS.

Dism.exe /Online /Cleanup-Image имеет несколько дополнительных параметров (или переключателей):

  • /АнализКомпонентСторе
  • /StartComponentCleanup
  • /ResetBase с /StartComponentCleanup
  • /SPSuperseded

В этой статье я предполагаю, что вы будете читать варианты справки, просто добавьте /? , например: dism.exe/Online/Cleanup-Image/? .

Совет. Если вам понравилась эта статья, вам также может понравиться следующий пост, в котором рассказывается о 5 дополнительных способах очистки дискового пространства в Windows Server!

Анализ папки WinSxS (хранилище компонентов) с помощью /AnalyzeComponentStore

Сначала можно использовать параметр /AnalyzeComponentStore. Это анализирует размер хранилища компонентов в Windows. Параметр AnalyzeComponentStore доступен в Windows 8.1 Windows Server 2012 R2 и уведомит вас о том, рекомендуется ли очистка хранилища компонентов.

dism.exe /online /Cleanup-Image /AnalyzeComponentStore

На изображении выше AnalyzeComponentStore рекомендует выполнить очистку хранилища компонентов. Так и сделаем.

Параметр

/StartComponentCleanup

Dism.exe удаляет замененные и неиспользуемые системные файлы из системы с помощью параметра /StartComponentCleanup.

dism.exe /online /Cleanup-Image /StartComponentCleanup

Есть также зарегистрированная запланированная задача StartComponentCleanup. Вы можете запустить эту задачу из командной строки:

Параметр /StartComponentCleanup поддерживается в Windows 8, Windows Server 2012 и более поздних версиях.

Использование параметра /StartComponentCleanup файла Dism.exe в Windows 10 дает результаты, аналогичные запуску задачи StartComponentCleanup в планировщике заданий, за исключением того, что предыдущие версии обновленных компонентов будут немедленно удалены (без 30-дневного льготного периода), и вы не сможете имеют ограничение по времени ожидания в 1 час.

В командной строке с повышенными привилегиями введите следующее:

Переключатель/ResetBase с параметром /StartComponentCleanup

При использовании переключателя /ResetBase с параметром /StartComponentCleanup программы dism.exe все замененные версии каждого компонента в хранилище компонентов удаляются.

dism.exe /online /Cleanup-Image /StartComponentCleanup /ResetBase

Все существующие пакеты обновления и обновления нельзя удалить после выполнения этой команды. Это не заблокирует удаление будущих пакетов обновлений или обновлений.

Параметр /ResetBase поддерживается в Windows 8.1 и Windows Server 2012 R2.

Параметр/SPSuperseded

Параметр /SPSuperseded удаляет все компоненты резервного копирования, необходимые для удаления пакета обновления. Пакет обновления нельзя удалить после выполнения этой команды.

Пакет обновлений нельзя удалить после выполнения этой команды.

Параметр /SPSuperseded поддерживается в Windows 7 или Windows Server 2008 R2 с пакетом обновления 1, 2012, 2012 R2.

Параметр /AnalyzeComponentStore доступен в Windows 8.1 и Windows Server 2012 R2. Используйте это для анализа размера хранилища компонентов (папка WinSxS) в Windows.

Инструмент очистки диска доступен в Windows Server 2012, но не в Windows Server 2012 R2

Как сказано в начале этой статьи, средство очистки диска доступно в Windows Server 2012, если вы установили компонент Desktop Experience.

В некоторых версиях Windows Server можно просто скопировать файлы cleanmgr.exe и cleanmgr.exe.mui в папки C:\Windows\system32 и C:\Windows\system32\en-Us со старого сервера Windows 2008 R2, если вы не хотите устанавливать компонент Desktop Experience.

Следующие действия по установке (копированию) cleanmgr могут работать не во всех версиях Windows Server. Попробуйте сами.

Мастер очистки диска в Windows Server 2008 R2
Microsoft KB2852386 добавляет параметр очистки диска в Windows Server 2008 R2, аналогичный обновлению для Windows 7. Я тестировал это на Windows Server 2012. Возможно, это не очищает все, но, по крайней мере, многое.

К сожалению, это больше не работает в Windows Server 2012 R2 (6.3.9600), вероятно, из-за KB2821895. Как отметил Аарон в комментариях, приведенное выше решение для копирования файлов cleanmgr.exe и cleanmgr.exe.mui не всегда работает хорошо. Поэтому я удалил эту информацию для Windows Server 2012 R2.

К счастью, функция очистки диска вернулась в Windows Server 2016 (по крайней мере, TP5).

Очистка диска в Windows Server 2016 TP5

После очистки диска требуется перезагрузка сервера. Не забудьте после этого перезагрузить компьютер или сервер! Фактическая очистка каталога WinSxs происходит во время следующей перезагрузки.

Ошибка 0x800f0906 с DISM /Online /Cleanup-Image, PowerShell Install-WindowsFeature и SFC /scannow

Доступны некоторые отчеты, объясняющие, что бюллетень по безопасности Microsoft MS14-046 сломал DISM /Online /Cleanup-Image /RestoreHealth, PowerShell Install-WindowsFeature с параметром -Source и SFC /scannow . Да, многое сломалось…

Обновление предоставлено Microsoft: KB3005628

Переместить папку Windows Server SoftwareDistribution

Со временем папка Windows Updates SoftwareDistribution в c:\Windows\SoftwareDistribution может стать довольно большой, например, если несколько обновлений не были успешно установлены.

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

Все в оболочке cmd.exe (Пуск > Выполнить > cmd и нажмите Enter). В этом примере новым расположением является D:\Windows-SoftwareDistribution .

  1. Остановите службу Центра обновления Windows: net stop wuauserv
  2. Переименуйте папку c:\Windows\SoftwareDistribution в c:\Windows\SoftwareDistribution.old : переименуйте c:\windows\SoftwareDistribution SoftwareDistribution.old
  3. Создайте ссылку с помощью Windows Sysinternals Junction или Windows mklink
    • Создайте новый каталог:
      mkdir D:\Windows-SoftwareDistribution
    • Создайте соединение:
      c:\>junction C:\Windows\SoftwareDistribution "D:\Windows-SoftwareDistribution" или:
      c:\>mklink /JC:\Windows\SoftwareDistribution " D:\Windows-SoftwareDistribution"
  4. Перезапустите службу Центра обновления Windows: net start wuaauserv

Когда через некоторое время все заработает и обновится нормально, удалите папку SoftwareDistribution.old.

Переместить папку с документами пользователя

Еще один способ получить дополнительное свободное место — переместить папку "Документы пользователя" (и другие папки, например "Загрузки"), например, из папки C:\Users\$USER$\Documents в папку D:\User\$USER$. \Documents (замените $USER$ на имя пользователя, папку Documents которого вы хотите переместить). Вот шаги, которые вам нужно выполнить (снимки экрана взяты из Windows Server 2016 TP5):

  1. Откройте проводник и щелкните правой кнопкой мыши папку "Документы", а затем "Свойства".
  2. Выберите местоположение
  3. Изменить место хранения файлов
  4. Если место назначения не существует, Windows попросит создать папку для вас.
  5. После завершения файлы перемещаются на новое место.

Перемещение папки с документами пользователя Windows, шаг 01

Перемещение папки с документами пользователя Windows, шаг 02

Перемещение папки пользовательских документов Windows, шаг 03

Заключение

Да, хранилище компонентов Windows (папка WinSxS) может стать очень большим. Но, к счастью, Microsoft предоставляет нам инструменты для мониторинга, управления и очистки папки WinSxS, чтобы восстановить используемое дисковое пространство.

Если вас устраивает установка функции Windows Desktop Experience в вашей системе, вы можете установить в своей системе утилиту очистки диска. В противном случае вы можете использовать команду DISM (система обслуживания образов развертывания и управления ими) для различных задач очистки.

Чтобы получить дополнительное свободное место, вы также можете переместить папку Windows SoftwareDistribution в другой раздел.

Привет, меня зовут Ян. Я не хакер, кодер, разработчик или гуру. Я всего лишь системный администратор, выполняю свои повседневные дела в Vevida (часть Yourhosting) / CLDIN.

Инструмент «Очистка диска» позволяет администратору быстро очистить системный диск Windows Server, удалив ненужные и временные файлы, в том числе очистить каталог WinSxS от файлов устаревших компонентов, оставшихся после установки последних накопительных обновлений. Утилита очистки диска (cleanmgr.exe) устанавливается по умолчанию в выпусках Windows Server 2016/2019 с графическим интерфейсом (Desktop Experience). Однако в предыдущих версиях Windows Server (2012 R2/2012/2008 R2) инструмент cleanmgr.exe отсутствует.

Использование инструмента очистки диска в Windows Server 2016

Чтобы очистить системный диск от ненужных файлов в Windows Server 2016 с помощью утилиты «Очистка диска», необходимо открыть свойства диска в проводнике и нажать кнопку «Очистка диска».

Выберите диск, который хотите очистить.

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

Вы можете выбрать компоненты, файлы которых можно удалить. Вам будет предложено удалить следующие временные файлы:

  • Настройка файлов журнала;
  • Загруженные файлы программы;
  • Временные файлы Интернета;
  • Корзина;
  • Временные файлы;
  • Миниатюры.

Чтобы удалить ненужные системные файлы, нажмите кнопку Очистить системные файлы.

Дополнительно предлагается очистить:

  • Устаревшие файлы Защитника Windows;
  • Системные архивные файлы отчетов об ошибках Windows (папка C:\ProgramData\Microsoft\Windows\WER\ReportQueue);
  • Системная очередь отчетов об ошибках Windows;
  • Пакеты драйверов устройств (см. Как удалить неиспользуемые диски из хранилища драйверов);
  • Очистка Центра обновления Windows — позволяет очистить хранилище компонентов в каталоге WinSxS. Старые версии файлов компонентов, оставшиеся после установки обновленных, удаляются.

Выберите нужные параметры, и программа «Очистка диска» покажет объем свободного места на диске, который вы выделили. Нажмите OK и подтвердите удаление файлов.

Подождите, пока средство cleanmgr.exe удалит ненужные файлы.

Cleanmgr.exe: параметры командной строки для очистки диска

Инструмент cleanmgr.exe имеет несколько параметров командной строки, которые позволяют использовать его в различных сценариях автоматической очистки диска. Их можно использовать как на Windows Server, так и на рабочих станциях пользователей под управлением Windows 10.

cleanmgr.exe [/d буква диска] [/SAGESET:n | /САГЕРУН:n | НАСТРОЙКА:n | /НИЗКИЙ ДИСК | /VERYLOWDISK | /НАСТРОЙКА | /АВТООЧИСТКА]

Параметр /AUTOCLEAN используется для удаления старых файлов, оставшихся после обновления сборки Windows. Параметр /SETUP позволяет удалить файлы, оставшиеся от предыдущей версии Windows (если вы выполнили обновление на месте).

Команда cleanmgr /LOWDISK запускает графический интерфейс очистки диска с уже выбранными параметрами очистки.

Команда cleanmgr /VERYLOWDISK выполняет автоматическую очистку диска (без показа графического интерфейса), а по окончании выводит информацию о выполненных действиях и доступном свободном месте.

С помощью параметров /sageset:xx и /sagerun:xx можно создать и запустить настраиваемый набор параметров очистки.

Например, введите команду: cleanmgr /sageset: 11 . В открывшемся окне выберите компоненты и файлы, которые вы хотите автоматически очистить (я выбрал все варианты).

Эти настройки сохраняются в разделе реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches. В этом разделе реестра перечислены все компоненты Windows, которые можно очистить с помощью инструмента очистки диска. Для каждого выбранного вами параметра создается параметр DWORD с именем StateFlags0011 (0011 — это число, указанное вами в параметре sageset).

Чтобы запустить задачу очистки диска с выбранными параметрами, выполните команду:

Если вам нужно настроить задачу автоматической очистки диска на компьютерах (или серверах) в домене Active Directory, вам просто нужно экспортировать этот раздел реестра и развернуть его на компьютерах через объект групповой политики.

Чтобы автоматически очищать системный диск на рабочих станциях с Windows 10, вы можете создать простое запланированное задание со следующим кодом PowerShell:

Start-Process -FilePath CleanMgr.exe -ArgumentList '/sagerun:11' -WindowStyle Hidden -Wait

Как включить очистку диска в Windows Server 2012 R2/2008 R2 без установки Desktop Experience?

По умолчанию в Windows Server 2012/R2 и 2008/R2 средство очистки диска (cleanmgr.exe) по умолчанию не установлено. Чтобы использовать утилиту cleanmgr, сначала необходимо установить отдельную серверную функцию Desktop Experience с помощью диспетчера серверов или PowerShell ( Install-WindowsFeature Desktop-Experience ).

Вместе с Desktop Experience на сервер устанавливается множество других ненужных компонентов:

  • Проигрыватель Windows Media
  • Темы рабочего стола;
  • Поддержка AVI для Windows;
  • Комплект Windows SideShow; ;
  • Очистка диска
  • Центр синхронизации;
  • Аудиозапись;
  • Карта персонажей;
  • Ножницы.

Чтобы запустить очистку диска на Windows Server, вы можете использовать простой метод: просто скопируйте два файла Cleanmgr.exe и Cleanmgr.exe.mui из WinSxS в каталог system32. Ниже приведены команды для копирования файлов cleanmgr в разные версии Windows (во всех случаях путь используется для англоязычных версий Windows Server).

Windows Server 2012 R2 x64

Описанный выше прием не работает в Windows Server 2012 R2 из-за изменений, внесенных обновлением KB2821895. Дело в том, что после установки этого обновления для хранения бинарных файлов компонентов используется сжатие. При попытке запустить скопированный cleanmgr.exe появляется следующая ошибка:

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

  1. Установка компонента Desktop Experience с помощью PowerShell: Install-WindowsFeature Desktop-Experience
  2. Перезагрузите сервер.
  3. Скопируйте файлы %windir%\system32\cleanmgr.exe и %windir%\system32\en-US\cleanmgr.exe.mui в любой каталог (c:\temp); : Uninstall-WindowsFeature Desktop-Experience
  4. Перезагрузить
  5. Скопируйте файлы cleanmgr.exe и cleanmgr.exe.mui в указанные выше каталоги.

Позже оба файла можно скопировать на другие серверы или интегрировать в шаблон виртуальной машины Windows Server 2012 R2.

Чтобы запустить средство очистки диска, запустите команду cleanmgr.exe с правами администратора.

Совет. Вы можете использовать команду DISM для удаления устаревших файлов компонентов, оставшихся после установки обновлений на Windows Server R2:

Если у вас уже давно работает Windows Server, возможно, вам не хватает места на диске, особенно на виртуальной машине. В этой статье объясняется, как включить утилиту «Очистка диска» в Windows Server 2008, 2008 R2, 2012 и 2012 R2 без включения возможностей рабочего стола, чтобы восстановить много места из C:\Windows\WinSxS. .

Очистка диска — это бесплатный инструмент, предоставляемый корпорацией Майкрософт, но не включенный по умолчанию в выпуски Windows Server для Windows. Как правило, вам нужно включить функцию «Рабочий стол», чтобы получить эту простую утилиту — к сожалению, добавление ненужных утилит, таких как проигрыватель Windows Media, в процессе. Это не идеально и может даже не сработать, если у вас уже закончилось место на диске.

Есть два файла, которые необходимо скопировать в правильные места, чтобы включить эту утилиту:

Эти файлы поставляются вместе с Windows в секретном месте, поэтому вам просто нужно скопировать их в папку, где они находятся.

После того как вы скопировали их оба, просто найдите и запустите «cleanmgr». Вам нужно быть администратором, чтобы запустить его.

cleanmgr.exe

Используйте приведенный ниже список, чтобы найти расположение файла cleanmgr.exe, а затем скопируйте его в C:\Windows\System32\

Windows Server 2012
C:\Windows\WinSxS\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.2.9200.16384_none_c60dddc5e750072a\cleanmgr.exe

Windows Server 2008 R2
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe

Windows Server 2008
C:\Windows\winsxs\x86_microsoft-windows-cleanmgr_31bf3856ad364e35_6.0.6001.18000_none_6d4436615d8bd133\cleanmgr.exe

cleanmgr.exe.mui

Используйте приведенный ниже список, чтобы найти расположение файла cleanmgr.exe.mui, а затем скопируйте его в C:\Windows\System32\en-US\

Windows Server 2012
C:\Windows\WinSxS\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.2.9200.16384_en-us_b6a01752226afbb3\cleanmgr.exe.mui

Windows Server 2008 R2
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.0.6001.18000_en-us_b9f50b71510436f2\cleanmgr.exe.mui

Windows Server 2008
C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_en-us_b9cb6194b257cc63\cleanmgr.exe.mui

Windows Server 2012 R2

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

  1. Установите функцию Desktop Experience через диспетчер серверов
  2. Скопируйте C:\Windows\System32\cleanmgr.exe и C:\Windows\System32\en-US\cleanmgr.exe.mui в отдельный (не -системная) папка
  3. Удалите функцию Desktop Experience с помощью диспетчера серверов.
  4. Скопируйте cleanmgr.exe обратно в C:\Windows\System32, а cleamgr.exe.mui в C:\Windows\System32\en-US\

Почему C:\Windows\WinSxS становится таким большим?

Эта папка представляет собой папку программного обеспечения Side-by-Side, в которой хранится множество компонентов, используемых в Windows. Если вы запустите такую ​​утилиту, как TreeSize, вы можете заметить, что эта папка очень большая. Отчасти это связано с тем, что многие файлы здесь также отображаются в отдельных частях файловой системы — не дубликаты, а просто ссылки.

Очистка WinSxS с помощью DISM

Вы также можете очистить папку WinSxS с помощью DISM — еще одного бесплатного инструмента, поставляемого с Windows, который может выполнять задачу, аналогичную утилите очистки диска.

Этот бесплатный инструмент работает в командной строке. Вы должны запустить командную строку от имени администратора (щелкните правой кнопкой мыши значок перед запуском и выберите «Запуск от имени администратора»).

Проблема просто в том, что я хочу сделать все возможное, чтобы очистить/сжать диск .vhdx виртуальной машины перед запуском командлета Optimize-VHD. Приятно использовать утилиту Microsoft Disk Cleanup. Проблема в том, что он не установлен по умолчанию.

Официальный способ получить его — использовать «Добавить роли и функции» и добавить функцию «Возможности рабочего стола». У этого есть нежелательные побочные эффекты, среди которых то, что для этой функции дополнительно требуются функции «Media Foundation» и «Ink and Handwriting». Мне просто нужна "Очистка диска".

Верно: отчасти так я это и понял. :) Но теперь мне не нужно перезагружать сервер, чтобы "установить" его.

Кроме того, удалите все файлы журналов в каталоге c:\windows\logs\cbs . Некоторые пользователи сообщают, что эти журналы потребляют более 20 ГБ. Эти журналы расширяются каждый раз, когда вы запускаете очистку диска или обновления Windows (и кто знает, что еще). Если удалить их не удается, остановите службу TrustedInstaller и повторите попытку.

1 Ответ 1

Для работы "Очистки диска" требуется всего 2 файла (вместе менее 260 КБ)

"cleanmgr.exe" для вашей платформы и "cleanmgr.exe.mui" для вашей локали. Они уже находятся на вашем компьютере в подпапках "%SystemRoot%\WinSxS".

Сначала найдите в папке «%SystemRoot%\WinSxS» «cleanmgr.exe». Скорее всего, вы найдете файлы в папках «amd64», «wow64» и «x86». Я выбрал «amd64» для обоих файлов в моей установке Windows Server 2012 Standard x64.

Скопируйте эти 2 файла в следующие папки:

  • %SystemRoot%\System32\cleanmgr.exe
  • %SystemRoot%\System32\en-US\cleanmgr.exe.mui

(Я предполагаю, что если вы используете другую локаль, у WinSxS будет больше вариантов выбора, и вам придется скопировать файл .mui во вложенную папку для этой локали.)

Технически, на этом все готово. Запустите «cleanmgr.exe» от имени администратора, если вы хотите, чтобы он показал вам все, что он может очистить (включая устаревшие обновления Windows, хранящиеся в WinSxS, которые теперь являются опцией в Win2012).

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

Чтобы новая функция "Очистка диска" появилась в меню "Пуск", создайте ярлык для файла "cleanmgr.exe". Поместите новый ярлык в папку «%ProgramData%\Microsoft\Windows\Start Menu\Programs\Administrative Tools»; назовите его «Очистка диска». Теперь, находясь в меню «Пуск», вы можете просто ввести «Очистка диска», и у вас будет возможность запустить его с самого начала от имени администратора.

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

Читайте также: