Что такое winsxs windows 7. Папка WinSxS: какие функции выполняет и как ее почистить

В процессе эксплуатации ОС, пользователи замечают стремительный рост папки Windows. Увеличение размеров связано с тем, что внутренняя папка winsxs начинает много весить. Давайте разберемся, что это за папка winsxs в Windows 7, 10, 8 и можно ли ее удалить или очистить.

Winsxs - что это за папка, и подлежит ли удалению

Данная папка находится по пути C:\Windows\winsxs и хранит файлы компонентов ОС, а также резервные копии и обновления к этим файлам. Даже если эти компоненты не установлены в операционной системе, они хранятся в папке winsxs, занимая место HDD.

Примечание: В данных обстоятельствах буква локального диска C. У Вас буква может отличаться, будьте внимательными.

На самом деле компоненты ОС находятся в других местах, а содержание папки winsxs является ссылками на эти компоненты. Когда устанавливаются обновления Windows, то они и их старые копии оседают в папке winsxs. Со временем обновлений становится все больше и соответственно папка winsxs занимает много места в Windows.

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

Важно! Сразу необходимо оговорится, что удалить папку winsxs в Windows вручную традиционным способом не имеет смысла, так как Вы можете убрать компоненты жизненно важные для работы системы.

Программы чистильщики не подойдут, остаются штатные средства ОС, которые помогут очистить папку winsxs в Windows. Давайте рассмотрим способы поподробнее.

Удаление старых обновлений через утилиту очистки диска

Данный способ работает в ОС Windows 7 и старше, который позволит уменьшить папку winsxs в размерах. Запустите компонент «очистка диска» одним из следующих способов:

В новом окне, кликните кнопку очистки системных файлов (показано на скриншоте). Если появится запрос UAC нажмите «да».

Чтобы очистить папку winsxs в Windows убедитесь, что стоит флажок напротив подпункта «Очистка обновлений Windows», так как этот раздел отвечает за удаление файлов в папке winsxs. Другие пункты отмечайте по своему желанию. В этом окне Вы так же сможете оценить примерный объем высвобождающегося дискового пространства. В заключении жмите OK и ждите окончание процесса, возможно, потребуется перезагрузка ПК.

Примечание: функция очистки обновлений встроена в windows 8, 10. Для семерки Microsoft выпускало обновление для появления данной опции. Если Вы у себя не обнаружите пункт очистки обновлений, тогда скачайте и установите пакет обновлений KB2852386. Способы, описанные ниже, не работают в Windows 7.

Чистка с помощью планировщика заданий

С выходом Windows 8 появилась функция, позволяющая почистить папку winsxs автоматически. В ОС создано автоматическое задание StartComponentCleanup, запускающееся в фоновом режиме для удаления старых версий файлов через 30 дневный срок. Данный период дается, чтобы исключить несовместимость новых обновлений. Вы можете вручную запустить это задание, для этого проделайте шаги ниже.

Для запуска планировщика заданий, в окне «выполнить» (вызывается кнопками Win + R), напишите команду taskschd.msc, далее кликните OK.

В левой части окна раскройте раздел «библиотека планировщика заданий», затем подразделы «Microsoft» и «Windows», найдите раздел Servicing и нажмите его. Выберите StartComponentCleanup, в правой части окна кликните «выполнить», чтобы запустить чистку папки winsxs. Вам необходимо подождать около часа.

Примечание: данную задачу Вы можете реализовать через командную строку. Необходимо , далее использовать команду:
schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"

Очистка через командную строку

Dism.exe – приложение cmd, позволяющее производить различные манипуляции с компонентами Windows, которое поможет очистить папку winsxs. В Windows 10, 8.1 ввели новый параметр AnalyzeComponentStore, помогающий определить, как много места занимает пака winsxs фактически. Вызовите командную строку с администраторскими правами, введите следующую команду и кликните Enter:

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

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

После анализа можно приступить к чистке папки winsxs. Параметр StartComponentCleanup в cmd дает аналогичные результаты, что и в планировщике заданий. Однако удаление компонентов происходит сразу, без ожидания. В cmd с правами админа, введите такую конструкцию, далее кликните Enter:

Dism.exe /online /Cleanup-Image /StartComponentCleanup

Используя параметр ResetBase Вы удаляете все устаревшие версии каждого компонента. Выглядит команда так:

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

Параметр SPSuperseded помогает уменьшить место, которое занимает пакет обновления. Используйте такую команду:

Dism.exe /online /Cleanup-Image /SPSuperseded

Дождитесь окончания выполнения этих команд. Далее оцените объем освобожденной памяти через параметр AnalyzeComponentStore.

Удаление компонентов Windows

Windows 8, 10 позволяют включить, отключить компоненты ОС Windows. Эти функции расположены в в разделе «программы».

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

Запустите cmd с привилегиями админа. Введите команду ниже, затем нажмите Enter:

DISM.exe /Online /English /Get-Features /Format:Table

Командная строка построит таблицу имен компонентов, а так же их состояний. Запомните название удаляемого компонента и используете такую команду:

DISM.exe /Online /Disable-Feature /featurename:NAME /Remove

В этой команде Вам необходимо заменить NAME на название вашего компонента. В примере будем удалять DirectPlay.

Таким образом состояние изменится на пометку Disabled with Payload Removed. Вот такими способами Вы можете очистить папку winsxs в Windows.

На этом все, теперь Вы знаете winsxs - что это за папка Windows 7, 8, 10 и как делать ее чистку. Рекомендуется в первую очередь использовать первые три способа, хотя к методу с планировщиком заданий можно не прибегать, так как он дублируется, но все на Ваше усмотрение. Удаление компонентов не рекомендуется, потому что много места это не освободит, а удаленные компоненты могут понадобиться в будущем. Вы можете еще , для высвобождения дополнительного места на HDD.

Многие пользователи, занимаясь оптимизацией объёма дискового пространства, которое занимает Windows 7, с удивлением обнаруживают, что папка winsxs имеет громадный размер, который, к тому же, увеличивается со временем. Естественно, перед ними встают вопросы, для чего она нужна, можно ли её удалить. По словам разработчиков ОС, в этой папке хранится информация обо всех обновлениях, устанавливавшихся в систему. Этим и объясняется факт роста её размера – чем старше Windows, тем больше обновлений в ней устанавливалось. А вот ответ на вопрос о её удалении и чистке не такой простой и требует разъяснений.

Удаление и чистка winsxs

Сразу отвечаем на вопрос, можно ли эту папку удалить? Нет, нельзя! Это неминуемо вызовет нестабильную работу Windows 7 или даже её крах с невозможностью восстановления. К такому же эффекту приведут попытки её ручной чистки удалением файлов в корзину или применение различных сторонних утилит-чистильщиков наподобие CCleaner. Вряд ли кому из пользователей, не говоря уже о программах очистки диска, известно, какие файлы из этой папки можно удалить, чтобы уменьшить её размер, а какие нельзя. Дело в том, что среди файлов этой папки есть свежие обновления, а есть и устаревшие, которые стали ненужными системе и впоследствии были заменены более новыми. Такие файлы занимают много места, от них можно было бы избавиться, но средства отличить их от нужных обновлений отсутствуют.

Как правильно очистить папку

В октябре 2013 года Microsoft’ом выпущено обновление KB2852386 (необязательное), которое и было предназначено для решения проблемы с аккуратной очисткой папки winsxs. Поэтому тем пользователям, кто собирается грамотно очистить эту папку, настоятельно рекомендуется его установить, если оно ещё не установлено. Но только для установки и работы этого обновления требуется, чтобы в Windows 7 был установлен СервисПак1 (SP1). Обновление работоспособно как в 32-разрядной Windows, так и в 64-разрядной.

Установка обновления KB2852386

Нежелательно скачивать это обновление с помощью одного из браузеров. Наилучший способ его установить – использовать штатные средства Windows. Для этого в Панели управления открываем раздел «Центр обновления Windows».

В этом окне необходимо щёлкнуть по необязательным объявлениям, в ответ на это будет выдан их список. В нём нужно найти KB2852386, пометить его флажком и нажать кнопку «Установить обновления». Затем нужно дождаться завершения процесса обновления и перезагрузиться.

Процесс очистки winsxs

При установленном обновлении KB2852386 процесс удаления устаревших обновлений выполняется следующим образом. Вызываем Проводник щелчком по «Компьютер», в окне проводника кликаем правой кнопкой мыши по системному диску и в появившемся контекстном меню выбираем «Свойства». В окне свойств открываем вкладку «Общие» и щёлкаем по кнопке «Очистка диска».

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

По завершении сканирования будет выдан список объектов, которые можно удалить и тем самым снизить объем занятой части системного диска. Пользователь должен пометить те объекты, которые он собирается удалить, и нажать кнопку «ОК». Необходимо пометить пункт «Очистка обновлений Windows». Если в папке winsxs нет устаревших обновлений, то этого пункта в перечне удаляемых не будет.

По нажатию «ОК» утилита очистки начнёт процесс удаления выбранных объектов. Он может занять достаточно большое время. После его завершения следует перезагрузить компьютер.

С помощью программы DISM

Эта утилита появилась в дистрибутивах Windows, начиная с 8-ки. Но по сведениям из Интернета, её можно использовать и в семёрке. Необходимо только ее скачать и установить. Каков же её функционал? А здесь удаление временных файлов, логов, КЭШа, сжатие установленной системы с указанием степени сжатия, отключение и удаление ненужных служб, и, конечно, удаление обновлений. Но сначала её нужно скачать и поместить в папку Windows\System32.

Утилита запускается в режиме командной строки от имени администратора. Прежде чем запускать очистку, следует выполнить анализ папки и узнать необходимость в её очистке. Формат команд этой утилиты не отличается разнообразием и имеет вид:

Dism.exe /Online /Cleanup-Image /опция команды

Далее мы будем опускать полный формат команды и приводить только опцию описываемой команды. В любом случае утилита отвечает окном с результатом выполнения команды, в котором значится строка «операция успешно завершена».

Анализ наполнения папки winsxs производится с помощью опции
/AnalyzeComponentStore
после выполнения этой команды получаем отчёт об анализе:

Из него видно, что можно безболезненно очистить резервные копии и отключённые компоненты, кэш и временные данные, сэкономив на этом чуть более 1 Гб. В отчёте присутствует строка «Рекомендуется очистка хранилища компонентов: Да», значит, можно выполнять команду очистки.

Для этого выполняем команду с опцией

/StartComponentCleanup

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

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

Удаление устаревших версий компонент системы можно выполнить с помощью команды с опцией

/StartComponentCleanup /ResetBase

Теперь обратимся к коррекции списка установленных компонент ОС. Разумеется, обычно это делается с помощью функции «Включение или отключение компонентов Windows» из раздела «Программы и компоненты» Панели управления. Однако даже если какой-либо компонент не помечен галочкой как подлежащий удалению в выданном Windows списке, он все равно может присутствовать в папке winsxs. Чтобы увидеть полный список хранящихся в этой папке компонент, нужно выполнить команду, задав опцию

/Online /English /Get-Features /Format:Table

Выбирая из полученной таблицы компоненты, которые не нужны пользователю, он может стереть их в winsxs и уменьшить ее размер с помощью команды, опции которой такие

/Online /Disable-Feature /featurename:имя /Remove

где имя – это название удаляемой компоненты.

Нужно ли вообще чистить папку?

Если трезво глядеть на вещи, то ответить на этот вопрос можно так:

  • Периодически, даже на очень давно установленной системе – нет. Попытки сэкономить несколько гигабайт дискового пространства при современных объёмах жёстких дисков ни к чему не приведут, кроме траты времени, износа диска и лишения возможности откатывать ненужные обновления. Следует также иметь в виду, что многие файловые менеджеры, в том числе и Проводник, завышают её размер примерно на 40%.
  • Если семёрка установлена менее 2-х лет назад, то размер этой папки вряд ли превысит 2-3 Гб и чистить её нет никакой необходимости.
  • Другое дело, когда оставшийся свободный объем системного диска настолько мал, что приводит к тормозам при работе. В таком случае эти самые освободившиеся несколько гигабайт могут дать увеличение производительности.

(в частности в Wndows 7 и Windows 8), можно заметить, что больше всего места занимает папка winsxs . Она находится в системной папке WINDOWS .

Что находится в папке winsxs и почему она занимает так много места?
Разработчики Microsoft решили сделать так, что все старые обновления системы (файлы компонентов и библиотеки), не удаляются, а остаются в системе на "всякий случай", точнее, чтобы если игре/программе понадобятся старые файлы, то они будут найдены в этой папке.

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

Хорошо если у Вас много места на системном диске, тогда Вы можете и не замечать постоянно растущего (особенно после обновления) места на диске, но что если у Вас и так мало места и нужно его очистить?

Как удалить/очистить/почистить/уменьшить размер папки winsxs?

В первую очередь нужно знать, что удалять эту папку нельзя! Потому что Вы удалите всё - и нужное и не нужное.

Самым правильным вариантом будет удаление старых обновлений Windows. Очистить папку winsxs можно с помощью специальной команды.

Итак, запускаем и вводим в неё

DISM.exe /online /Cleanup-Image /spsuperseded



Ждем и не закрываем окно до появления такой надписи:

После этого объем папки должен уменьшиться. К примеру, у меня изначально было свободно 8,01 Гб, после этой операции стало свободно 17,2 Гб.

Если Вам и этого будет мало, то можете ещё очистить диск от мусора.
Для этого жмем ПКМ по диску и выбираем Свойства . Там жмем Очистка диска


Ждем когда соберется информация по диску:


Выбираем файлы, отмеченные на скриншоте (Файлы дампы памяти и Debug Dump Files )

В этой статье мы обсудим ситуацию вокруг папки WinSxS в Windows, почему та неизменно разрастается в размерах, и пути регулирования её объёма.

Директория C:\Windows\WinSxS является репозиторием компонентов ОС Windows. Она содержит в себе файлы DLL, бинарные файлы, файлы XML, необходимые для установки и операций любой функции Windows. Когда устанавливаются обновления Windows, в системе появляются новые версии компонентов Windows; при этом предыдущие версии перебираются в указанную папку. Это делается для того, чтобы у пользователя была возможность откатиться назад в случае появления с обновлением каких-то проблем или сохранялась возможность совместимости с предыдущими версиями.

Даже не присматриваясь к этому краткому описанию назначения папки можно понять, что со временем увеличение объёмов папки неизбежно. Причём этот процесс ничем неограничен, хотя на своей памяти папок WinSxS размером более 20 Гб я не видел.

Самый простой способ сократить размер папки – просто убрать прежние версии оставшихся компонентов и устаревших обновлений (не вручную, естественно). Для этого можно воспользоваться встроенной в Windows 10 утилитой очистки системы или особой опцией команды DISM (о чём ниже).

КСТАТИ

В Windows 7 одноимённое средство очистки старые обновления не затрагивает. По умолчанию. Чтобы удалять ненужные обновления в этой версии при помощи cleanmgr.exe , необходимо обновление KB 2852386.

Всё бы ничего, да не всё так просто. Кроме описанных функций, папка WinSxS настоящий склад жёстких , которые являются указателями на файлы, принимая на себя все их функции. Это значит, что ссылка и сам файл могут иметь разные названия и располагаться в разных директориях одного тома, указывая при этом на один и тот же объект. А файловые менеджеры всех мастей отображают большой размер папки WinSxS именно с учётом таких жёстких ссылок, которые лежат в этой директории. Настоящий размер папки WinSxS можно узнать, например, с помощью небольшой программки DU (Disk Usage) от Sysinternals. Кроме того, проверить размер хранилища системных компонентов можно при помощи команды DISM:

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

Нередко на форумах вопрос о ручной очистке папки повторяется. Поддержу тех, у кого хватает ума оградить пользователей от стирания содержимого WinSxS простым выделением и клавишей Delete . Часто такие действия заканчиваются повреждением системного образа, хотя иногда (даже редко) такое удаление и “прокатывает”. Но даже если так и произошло, такой метод высвобождения пространства крайне не рекомендуется. Основными способами очистки WinSxS можно назвать:

  • сжатие папки через NTFS-компрессию
  • удаление старых версий компонентов из их хранилища (оставшихся версий после установки обновлений)
  • удаление нетребуемых компонентов системы.

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

Dism.exe /Online /Cleanup-Image /StartComponentCleanup

С этим справляется и cleanmgr.exe , также запущенная от имени администратора. Кстати говоря, в Планировщике задач Windows 10 предусмотрена операция, аналогичная DISM. Она затирает устаревшие обновления сроком старше 30 дней. Ищите задачу с именем StartComponentCleanup в разделе ~\Microsoft\Windows\Servicing .

Настройки по требованию или удаление компонентов

Такая “функция” появилась в новой версии Windows, позволяя удалять бинарные файлы неиспользуемых системных возможностей. И она доступна только из DISM или с помощью командлета DISM в PowerShell. Кроме того, нужно помнить, что команда DISM не способна анализировать пакеты зависимостей, как это происходило в предыдущей версии с похожей возможностью. Вобщем, после удаления пакета с использованием только DISM будет удалено только указанное. А остальные зависимые пакеты останутся. Полный список настроек и функций в образе Windows можно посмотреть запустив в консоли команду:

DISM.exe /Online /English /Get-Features /Format:Table



К примеру, мы не собираемся использовать неизменно появляющийся во всех версиях Windows давно почти бесполезный Internet Explorer . Его можно убрать из списка функций и возможностей, т.е. из именно из папки WinSxS, с помощью вот этой команды:

DISM.exe /Online /Disable-Feature /Featurename:Internet-Explorer-Optional-amd64 /Remove

Теперь в списке доступных функций системы статус этой службы изменится на Отключён (Disabled). Однако это именно тот случай, когда пользователь должен быть уверен в своих действиях. Напропалую отключать все Enabled-функции не следует по понятным причинам.

NTFS сжатие для WinSxS

Следующим вариантом уменьшить размер папки WinSxS – применить к директории . В этом случае настоятельно рекомендуется подстраховаться созданием полноценной резервной копии системы. После её создания запускаем консоль и останавливаем пару служб:

Sc stop msiserver sc stop TrustedInstaller sc config msiserver start= disabled sc config TrustedInstaller start= disabled

Запасёмся резервной копией списков доступа, закреплённых за папками и файлами (ACL-ки) в нашей директории с помощью утилиты icacls . Резервная копия ACL представляет собой простой тестовый файл, в котором прописываются файлы и папки, а также разрешения к ним.

Icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS_NTFS.acl" /t

Станем владельцем самой папки WinSxS и включённых в неё папок:

Takeown /f "%WINDIR%\WinSxS" /r

Присвоим своей учётке полные права на эту директорию:

Icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t

Сожмём содержимое папки командой из терминала. Некоторые из файлов сжатию не поддадутся (они могут просто использоваться прямо сейчас системой), так что, запусти вы команду без флага /I, она, наткнувшись на заблокированный файл, процесс остановит. Можно обнаружить название процесса, который работает над этим файлом (Ctrl + F ) и остановить его. Однако стоит сосредоточиться именно на сжатии тех файлов, которые системой не используются:

Compact /s:"%WINDIR%\WinSxS" /c /a /i *

После того, как закончим, дополученные на WinSxS права лучше делегировать обратно TrustedInstaller:

Icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t

Восстанавливаем оригинальные ACL в папку WinSxS из ранее созданного резервного файла:

Icacls "%WINDIR%" /restore "%WINDIR%\WinSxS_NTFS.acl"

А теперь восстанавливаем автозапуск служб Windows Installer and Windows Module Installer :

Sc config msiserver start= demand sc config TrustedInstaller start= demand

Можете проверить размер папки WinSxS:

В моём случае с помощью компрессии мне удалось снизить размер папки почти на 4 Гб. Не бог весть что, однако… На одной из машин у меня небольшой по размерам SSD – для него и такой объём пространства серьёзен. И, если такой вариант развития событий вам по душе, могу предложить замену командам в этом абзаце вот этим батником:

Перед запуском закройте проводник Windows. Перед запуском распакуйте файл из архива, разблокируйте в свойствах и запустите от имени администратора. Времени потребуется немало.

Как сжатие повлияет на работу папки WinSxS и системы в целом?

Windows работает со сжатыми файлами в так называемом прозрачном режиме (режиме передачи данных). Но на сжатие/декомпрессию данных всегда требуется время. А это пользователь иногда замечает: далеко не у всех из нас под капотом прицеплен “модерновый камень”. Но, кстати, в случае с функцией сжатия иметь мощный процессор гораздо более эффективнее, чем быстрый жёсткий диск – в некоторых случая я лично отмечал даже прирост скорости в работе именно со сжатыми файлами. Так что пользователи нестарых моделей компьютеров замедление работы не ощутят, а вот обладателям “старичков” функцию сжатия следует использовать осторожно по отношению к любым сжатым файлам и папкам.

Удаление старых версий: cleanmgr.exe

Ещё один надёжный способ освободить место на диске (в том числе и в папке WinSxS) это утилита очистки cleanmgr.exe . В Windows 10 она умеет немного больше, чем предыдущие в Vista/7. Запускаем:

очистка папки winsxs windows 7

Публикации по теме