WinSxS — что это за папка и можно ли ее удалить или уменьшить? Уменьшить папку winsxs


Как уменьшить ее размер в Windows — Windows ИНФО

Папка WinSxS и как уменьшить ее размер в Windows

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

Одной из главных причин такого поведения является папка WinSxS, которая имеет постоянство увеличиваться в размерах. Вот, как на данный момент выглядит моя папка:

И у меня ещё можно сказать папка WinSxS скромница, всего лишь 8 гигов и это лишь потому, что я не качаю обновления. У тех же пользователей, у кого ОСь сама качает обновления папка достигает куда больших размеров (под 20 и 30 гигов), доставляя ацкую попаболь юзерам. Хотя если смотреть глобально, то многие могут задаться вопросом — а что в этом такого? при нынешних объемах дисков в несколько терабайт, то 20-30 гигов под систему это крохи?

Верно, но не совсем. Все дело в том, что:а) Не знаю как там в пендостане в общем и майкрософт в частности, но у нас принято разбивать жесткий диск так, что бы системный был как можно меньше — только под систему.б) Когда на рынок вышли SSD диски, то для многих такое положение дел с постоянно растущей папкой совсем не показалось радужным. Увы, ССД и дороги и объемом не вышли, что бы так беззаботно разбазаривать национальное дисковое пространство.

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

Папка WinSxS — что это?

Ответим на несколько вопросов кратко, чтобы уже к ним не возвращаться. Что за папка то такая WinSxS и зачем нужна. WinSxS — это некий резервный склад всех обновлений и компонентов системы, которые уже и не используются, но нужны для отката на предыдущее состояние, если что-то пойдет не так. Допустим, стоит у вас автоматическое обновления системы, которое исправно качает каждый день пачками новые обновления. Как вы думаете, что оно делает со старыми? Удаляет? Кукиш вам, оно их бережно хранит, на случай, если новые обновления доставят неудобства операционной системе.

Почему папка WinSxS такая большая и постоянно растет и увеличивается в объеме?

Во-первых, Папка WinSxS содержит в себе все компоненты Windows, даже если вы их и не используете или как вам казалось — удалили. Даже не так, папка содержит в себе «жесткие ссылки» на все компоненты Windows. Технически самих файлов в самой папки нет, но наличие жестких ссылок на них будет давать объем с учетом этих самых компонентов. Так что просто так зайти в папку и что-то удалить у Вас не получится…хотя некоторые и умудряются 

Во-вторых, как я уже сказал выше — все обновления, что закачиваются вашей Windows не удаляются, а сохраняются как раз в папке WinSxS. Поэтому каждое новое обновление — увеличивает размер папки WinSxS.

Как очистить и уменьшить размер WinSxS?

Есть три способа очистки папки WinSxS, с помощью которых вы можете заметно уменьшить размер папки WinSxS. Однако если у Вас стоит Windows 7, то для вас он только один и самый слабый. Обладателям Windwos 7 вообще в этом плане не повезло, ведь данная функция появилась только с выпуском SP1, а до этого 3 года Windows 7 разбухала как хлеб в молоке.

Очистка диска

У меня стоит 8ка, но первый способ актуален для всех версий начиная с семерки. Нам необходимо запустить очистку системы. Для этого либо наберите команду cleanmgr в командной строке, запущенной от имени администратора

Или же в меню Пуск набрать Очистка диска и запустить её от имени администратора

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

В открывшемся диалоговом окне, находим опцию «Очистка обновлений Windows», выставляем галочку и жмем ОК.

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

Если по какой-то причине у Вас нет очистки обновлений, то скачайте и установите KB2852386.

Команда DISM

Это самое простое и верное решение для тех, кто уже перешел на восьмую версию Windows или 8.1. Пишем в командной строке команду, запущенной от имени администратора:

Dism.exe /Online /Cleanup-Image /StartComponentCleanup

Немножко ждем и получаем:

После чего перезагружаем систему и немного ждем.

Данная команда удаляет все обновления старше 30 дней. аналогично мы можем удалить и более новые обновления и компоненты.

Для удаления последних обновления аналогично запускаем команду:

DISM.exe /online /Cleanup-Image /SPSuperseded

А вот чтобы удалить все компоненты, не использующиеся в Windows, даем команду:

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

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

Запланированное задание

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

Но вы можете запускать эту задачу и чаще, самостоятельно заходя в Планировщик заданий -> Microsoft –> Windows –> Servicing –> StartComponentCleanup и запускать ее вручную

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

wininfo.org.ua

Как уменьшить размер папки WinSxS в Windows 8.1

 

Сначала я обозначу два вопроса, которые сильнее всего волнуют людей в контексте папки WinSxS.

Почему папка WinSxS такая большая

На самом деле, она занимает значительно меньше места, чем кажется. Множество файлов из папки Windows проецируется в нее с помощью жестких ссылок именно из папки WinSxS. Да, файловые менеджеры могут показывать размер папки WinSxS в 10GB и более, но лишь потому, что они принимают за чистую монету объем жестких ссылок. В Windows 8.1 этому есть очень наглядное подтверждение.

Почему папка WinSxS постоянно растет

Каждый раз, когда вы устанавливаете обновления, системные файлы заменяются новыми. Их старые версии сохраняются в папке WinSxS, чтобы обеспечить возможность отката в случае проблем с новыми версиями, т.е. устойчивое обслуживание системы. Это приводит к увеличению объема папки WinSxS, хотя на практике ее максимальный размер редко превышает 15GB. Кстати, именно этого аспекта коснулось одно изменение в Windows 8.1, как вы увидите ниже.

Новые возможности системы обслуживания

Вездесущая утилита DISM обзавелась в 8.1 новыми параметрами командной строки, которые я разберу в этой статье. Но сначала – несколько примечаний:

  1. В моем распоряжении находится английская Windows 8.1 Preview, в которой результаты команд DISM не локализованы, несмотря на русский языковой пакет. Фанатичным приверженцам локализованных ОС придется потерпеть :)
  2. Поскольку Windows 8.1 Preview установлена недавно, размер папки WinSxS невелик, равно как и выгода от описанных в статье манипуляций. Однако, чем дольше установлена ОС, тем заметнее польза от изменений в системе обслуживания.
  3. Все команды нужно выполнять от имени администратора.

Готовы? Давайте пойдем от простого к сложному!

Как определить реальный размер папки WinSxS в Windows 8.1

С помощью одного из новых параметров DISM вы можете проанализировать хранилище компонентов, т.е. папку WinSxS.

Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

Результат команды будет примерно таким:

Здесь по порядку:

  1. Размер хранилища компонентов, каким его видит проводник, т.е. без учета жестких ссылок внутри WinSxS.
  2. Реальный размер хранилища компонентов с учетом жестких ссылок (за исключением ссылок на папку Windows), в том числе:
  • Общие файлы с папкой Windows. Эти файлы необходимы для работы системы и ни в коем случае не являются лишними. В моем примере они составляют 87% от размера хранилища, но чем больше обновлений устанавливается, тем ниже этот процент.
  • Резервные копии и отключенные компоненты. Эти файлы хранятся на случай проблем с обновленными компонентами или для включения ролей или компонентов. Их можно условно считать лишними, поскольку они не критичны для текущей работы системы.
  • Кэш и временные файлы. Эти файлы нужны для быстрой работы системы обслуживания, но не являются абсолютно необходимыми для функционирования Windows.
  • Дата последней очистки хранилища. Об очистке во всех подробностях ниже.
  • Число пакетов, замененных более новыми, и рекомендация по очистке. Фактически, это – файлы, которые обновились после работы Windows Update. Их можно удалить очисткой хранилища.
  • Я прямо вижу, как у вас руки чешутся очистить хранилище и высвободить место :)

    Как очистить папку WinSxS в Windows 8 и 8.1

    Начиная с Windows 8, в ОС заложено три способа очистки.

    Команда DISM (рекомендую)

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

    Dism.exe /Online /Cleanup-Image /StartComponentCleanup

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

    Утилита «Очистка диска»

    Наберите cleanmgr в командной строке, запущенной от имени администратора. Встроенная в Windows утилита для очистки диска покажет, сколько места вы сэкономите, удалив файлы обновлений Windows.

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

    Запланированное задание

    Windows выполняет очистку папки winsxs по расписанию с помощью задания Microsoft – Windows – Servicing – StartComponentCleanup.

    Конкретной команды не видно, поскольку очистка реализована обработчиком COM-объектов. А отсутствие триггеров свидетельствует о том, что задание работает в рамках вездесущего автоматического обслуживания. Запустив задание из планировщика или командной строки, вы достигаете почти того же эффекта, что и командой DISM с ключом /StartComponentCleanup. Различия таковы:

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

    Выполнив очистку, в Windows 8.1 вы можете снова проанализировать хранилище и оценить изменения.

    Как видите, в моем случае очистка 10 пакетов позволила сэкономить 60MB, что не так уж и много в масштабах папки. Однако можно почистить еще :)

    Как удалить старые версии компонентов из папки WinSxS в Windows 8.1

    Во времена Windows XP был очень популярен вопрос, можно ли удалять папки $NTUninstallKBxxxxxx$ из папки Windows. Помните такое?

    В Windows 8.1 появилась аналогичная возможность, хотя реализована она совсем иначе ввиду глобальных различий в системах обслуживания 8.1 и XP.

    Команда для удаления

    Начиная с Windows 8.1, у параметра /StartComponentCleanup есть дополнительный ключ /ResetBase, с помощью которого можно удалить все предыдущие версии компонентов. Этот ключ не задействован в запланированном задании.

    Это предупреждение вовсе не дежурное, если вспомнить недавнюю ошибку 0xc0000005 после KB2859537, от которой плакал горючими слезами Рунет. Так или иначе, волшебная команда:

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

    Очевидно, выигрыш дискового пространства зависит как от количества зачищаемых обновлений, так и от объема замененных ими компонентов. В моем примере удалось высвободить еще около 24MB.

    Что происходит при удалении предыдущих версий компонентов

    Как я сказал выше, в папке WinSxS хранятся предыдущие версии компонентов, замененные обновлениями Windows. Например, на момент публикации этой статьи Microsoft выпустила два обновления для встроенного в систему Adobe Flash Player, что видно из журнала установки.

    Второе обновление заменило некоторые компоненты Flash Player, а в папке WinSxS сохранились обе версии:

    После удаления предыдущих версий из папки WinSxS исчезает папка с более старой версией 6.3.9431.0. Если старых версий несколько, все они удаляются, и остается только самая последняя.

    И да, для установленных обновлений в списке appwiz.cpl пропадает кнопка «Удалить», потому что откатываться уже некуда

    Описанные выше нововведения в Windows 8.1 не являются секретом, поскольку задокументированы в библиотеке TechNet (пока только на английском языке). Причем объяснения там выгодно отличаются от типичной сухой документации — чувствувется перо Джозефа Конвея (Joseph Conway), главнoго источника сведений системе обслуживания Windows, который, к сожалению, недавно объявил о прекращении публикаций в своем блоге.

    Сжатие компонентов в папке WinSxS (тайное знание)

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

    1. Сжатие применяется к файлам, которые не использует операционная система. К ним относятся предыдущие версии компонентов и отключенные компоненты. Этим, видимо, и объясняется не столь существенный выигрыш от удаления предыдущих версий с параметром /ResetBase.
    2. Используется сжатие NTFS. По неподтвержденной информации, в Windows 8.1 также используется алгоритм разностного сжатия (delta compression), который превосходит по эффективности сжатие NTFS. Вероятно, этот алгоритм опирается на блоки данных.
    3. Экономия дискового пространства может быть весьма существенной в некоторых сценариях. Так, на установке Windows Server Core 2012 R2 Preview благодаря сжатию высвобождается около 20% места, если исключить из уравнения файлы подкачки и гибернации. Экономия достигается за счет сжатия компонентов отключенных ролей сервера.

    Возможно, со временем Microsoft выдаст в документации или блогах команд больше информации о сжатии в Windows 8.1.

    Кстати, NTFS-сжатие файлов, не являющихся жесткими ссылками, является единственным способом сокращения объема папки WinSxS, хоть как-то имеющим право на жизнь в предыдущих ОС Windows, хотя даже этот метод не поддерживается>. Читатель блога Александр делился в комментариях ссылкой на свою статью об этом (публикация ссылки не означает, что я рекомендую этот способ или проверял конкретную реализацию).

    С чем связаны изменения в системе обслуживания Windows 8 и 8.1

    Конечно, точный ответ на этот вопрос может дать только Microsoft, поэтому я просто поделюсь своим видением ситуации.

    Серверные ОС

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

    Удаление неиспользуемых ролей сервера в Windows Server 2012 помогает ИТ-специалистам эффективнее распоряжаться дисковым пространством. Тем, кто не знает об этой возможности или не считает целесообразным ее применять, поможет сжатие компонентов неиспользуемых ролей в Windows Server 2012 R2.

    Клиентские ОС

    К моменту выхода Windows 7 стоимость 1GB на жестких дисках была столь невелика, что папка WinSxS вызывала головную боль только у товарищей с маленьким сами знаете, чем. Однако на сцену уже выходили SSD, и система обслуживания Windows не очень хорошо сочеталась с их скромным объемом.

    Действительно, все современные планшеты на Clover Trail в лучшем случае комплектуются диском в 64GB. А в более популярных младших моделях после вычета раздела восстановления остается около 25GB, чего недостаточно для более-менее долгосрочной работы Windows.

    В Windows 8 очистка резервных копий компонентов нацелена на более эффективное использование пространства маленьких дисков планшетов, а в Windows 8.1 удаление предыдущих версий предоставляет запасной аэродром в самых тяжелых случаях.

    www.windxp.com.ru

    FAQ: Очистка и сжатие папки WinSxS в Windows 10 и 8.1

    В этой статье мы поговорим о каталоге WinSxS в Windows 10 и Windows 8.1, причинах его постоянного роста и способах очистки. Каталог C:\windows\WinSxS является хранилищем компонентов Windows. В этом каталоге хранятся dll библиотеки, бинарные и xml файлы, необходимые для установки и работы той или иной роли ОС Windows. При установке обновлений Windows (это происходит ежемесячно), новая версия обновляемого компонента устанавливается в систему, а старая сохраняется в хранилище WinSxS (это необходимо для обеспечения совместимости и возможности «отката» на старые версии компонентов при удалении проблемного обновления).

    Как не трудно догадаться, каталог WinSxS со временем будет постоянно увеличиваться, причем размер его не ограничен ничем (хотя на практике размер папки WinSxS в Windows 10/8.1 редко превышает 15-20 Гб.)

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

    Как узнать реальный размер папки WinSxX в Windows 10 / 8.1

    Еще одной особенностью папки WinSxS является наличие в ней большого количества так называемых hard links (жестких символьных ссылок). Жесткая ссылка представляет собой полностью равноправный оригинальному указатель на файл. Т.е. указатель и исходный файл могут иметь разные имена и находиться в пределах одного раздела в разных каталогах, но реально указывать они будут на один и тот же объект. Именно из-за наличия жестких ссылок, которые включаются в расчет общего размера каталога, файловые менеджеры (и в том числе Windows Explorer) показывают несколько преувеличенный размер папки WinSxS. Узнать реальный (без учета жестких ссылок) размер папки WinSxS можно с помощью утилиты SysInternal du:

    du -v c:\windows\winSXS

    Так же вы можете проанализировать размер хранилища компонентов (папку WinSxS) с помощью команды DISM:

    Dism.exe /Online /Cleanup-Image /AnalyzeComponentStore

    Разберемся, что возвращает данная команда:

    Размер хранилища компонентов по данным проводника : 5.70 GB (это размер хранилища без учета жестких ссылок)Фактический размер хранилища компонентов : 5.49 GB (реальный размер хранилища компонентов с учетом жестких ссылок)Совместно с Windows : 3.12 GB (обязательные файлы системы, не могут быть удалены)Резервные копии и отключенные компоненты : 2.12 GB (устаревшие файлы компонентов, которые нужны на случай проблем установленными обновлениями)Кэш и временные данные : 245.87 MB (файлы используются для ускорения работы системы обслуживания)Дата последней очистки : 2018-07-31 12:45:23Число освобождаемых пакетов : 10 (файлы, которые обновились после установки обновлений Windows, они будут удалены при очистке хранилища)Рекомендуется очистка хранилища компонентов : Да

    Как вы видите, в данном случае можно уменьшить размер каталога WinSxS на 2.1 Гб + 250 Мб.

    У многих пользователей возникает естественный вопрос можно ли вручную удалить файлы из папки WinSxS. Ответ на этот вопрос – категоричное НЕТ! Такими действиями с большой долей вероятности получиться нарушить работоспособность Windows. И хотя некоторые попытки удаления файлов из папки WinSxS могут быть удачными, рекомендовать этот способ с точки зрения потенциальной опасности для системы нельзя.

    Остановимся на наиболее безвредных с точки зрения системы способах очистки папки WinSxS в Windows 10 и Windows 8.1. Это:

    • Удаление старых версий компонентов, оставшихся после установки обновлений;
    • Технология Features on Demand (функции по требованию), позволяющая удалить неиспользуемые компоненты Windows с диска;
    • Сжатие файлов в папке WinSxS – способ уменьшить размер каталога WinSxS за счет NTFS компрессии ее содержимого.

    Для достижения максимального результата все три способа можно использовать совместно.

    Очистка хранилища компонентов (папки WinSxS ) в Windows 10 / 8.1

    На мой взгляд самый быстрый и простой способ очистить место в хранилище компонентов (т.е. очистить папку WinSxS), удалив старые версии компонентов – выполнить команду:

    Dism.exe /Online /Cleanup-Image /StartComponentCleanup

    У параметра /StartComponentCleanup есть дополнительная опция /ResetBase, позволяющая удалить все предыдущие версии компонентов (после этого вы не сможете удалить установленные обновления или Service Pack, а в панели обновлений appwiz.cpl у обновления пропадет кнопка «Удалить»). Полностью команда выглядит так:

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

    Также вы можете удалить устаревшими обновления из мастера «очистки диска». Выполните команду cleanmgr c правами администратора.

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

    Далее выберите опцию “Файлы журнала обновления Windows» и нажмите Ок для начала очистки. Утилита очистки диска покажет сколько места вы можете освободить, удалив файлы журнала старых обновлений Windows. В моем примере это 427 Мб.

    После окончания очистки хранилища с помощью DISM проверьте сколько освободилось места на диске.

    Кроме того, в планировщике Windows 10 есть специальное задание автоматического обслуживания, которое выполняет ту же самую операцию, что и dism с ключом StartComponentCleanup, удаляя все устаревшие обновления старше 30 дней. Это задание с именем StartComponentCleanup находится в разделе \Microsoft\Windows\Servicing.

    Функции по требованию в Windows 10 и 8.1

    В статье «Безопасная очистка папки WinSxS в Windows Server 2012» мы рассмотрели функцию Features on Demand (функции по требованию), предоставляющую возможность удаления бинарных файлов неиспользуемых ролей из каталога WinSxS. Для удаления с диска неиспользуемых ролей существует специальный командлет Powershell — Uninstall-WindowsFeature. Однако в случае с Windows 10 и 8.1 не все так просто. Дело в том, что командлет Uninstall-WindowsFeature в этих версиях Windows отсутствует. А технология Features on Demand реализуется только с помощью DISM или командлета DISM PowerShell. Кроме того, важно знать, что команда DISM, в отличии от командлета Uninstall-WindowsFeature, не анализирует зависимости пакетов друг от друга.  Так что при удалении пакета Windows с помощью DISM будет удален только указанный в команде компонент, а все зависимые от него пакеты останутся в системе. Именно по этой причине для удаления ролей с диска в Windows Server 2012 не стоит использовать DISM, т.к. есть гораздо более удобное и функциональное средство.

    Полный список доступных функций в образе Windows 10 /8.1 можно получить с помощью команды:DISM.exe /Online /English /Get-Features /Format:Table

    Предположим, например, что компонент TelnetClient в дальнейшем нам не понадобится. Удалим этот компонент с диска (по сути из каталога WinSxS) командой:DISM.exe /Online /Disable-Feature /Featurename:TelnetClient /Remove

    Если еще раз вывести список всех доступных функций по требованию в Windows, вы увидите, что статус компонента изменится на Disabled with Payload Removed.

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

    Включаем NTFS сжатие на папке WinSxS в Windows 10 и 8.1

    Еще один способ уменьшения размера каталога WinSxS в Windows 10 / 8.1 – сжать содержимое каталога на уровне файловой системы NTFS.

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

    1. Откройте командную строку с правами администратора;
    2. Остановите и отключите службы Windows Installer  и Windows Module Installer:sc stop msiserver sc stop TrustedInstaller sc config msiserver start= disabled sc config TrustedInstaller start= disabled
    3. Создайте резервную копию списков доступа (ACL) назначенных на файлы и папки в каталоге WinSxS с помощью утилиты icacls. Резервная копия ACL представляет собой обычной текстовый файл, в котором указаны все файлы и каталоги и назначенные на них NTFS разрешения (в дальнейшем этот бэкап понадобиться для восстановления оригинальных ACL):icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS_NTFS.acl" /t

    4. Назначим себя владельцем папки WinSxS и всех вложенных каталогов:takeown /f "%WINDIR%\WinSxS" /r
    5. Предоставим своей учетной записи полные права на каталог WinSxS:icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t
    6. Выполним сжатие каталог WinSxS и всего его содержимого с помощью команды compact. Часть файлов может использоваться системой, поэтому если запустить команду без параметра /i, сжатие будет остановлено на первом же файле, используемом в настоящий момент системой. С помощью Process Explorer можно найти имя процесса, открывшего данный файл (CTRL+F) и завершить его. Такой подход к сжатию очень трудоемкий. Мы лишь ограничимся сжатием неиспользуемых файлов (в Windows 10 можно использовать более прогрессивное LZX сжатие):compact /s:"%WINDIR%\WinSxS" /c /a /i *

    7. Восстановим владельца каталога WinSxS, вернув TrustedInstaller:icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t
    8. Восстановим оригинальные NTFS разрешения на каталог WinSxS из резервной копии ACL: icacls "%WINDIR%" /restore "%WINDIR%\WinSxS_NTFS.acl"
    9. Восстановим тип запуска служб Windows Installer и Windows Module Installer:sc config msiserver start= demand sc config TrustedInstaller start= demand

    Проверим текущий размер каталога WinSxS:

    Как вы видите, в нашем пример размер папки WinSxS за счет сжатия уменьшился с 5,8 Гб до 4 Гб (примерно на треть). Неплохо, особо для небольшого по размеру SSD-диска, место на котором стоит достаточно дорого.

    На что может повлиять сжатие каталога WinSxS.

    Windows работает со сжатыми файлами в прозрачном режиме, однако при обработке таких файлов, ей может понадобиться дополнительное время на их декомпрессию/компрессию, это означает некоторое замедление процессов установки компонентов Windows или обновлений. Однако для современных процессоров (CPU) компрессия / декомпрессия файлов выполняется практически мгновенно, так что реального уменьшения скорости пользователь может даже не заметить. Мало того, если жесткий диск медленный, а процессор достаточно быстрый – при сжатии можно заметить даже увеличение скорости работы с диском! Отметим, что при включении ntfs-сжатия всего содержимого папки WinSxS, за счет использования жестких ссылок окажутся сжатыми ряд файлов в других системных каталогах.

    Указанные команды можно выполнять по отдельности (так проще контролировать успешность выполнения каждой из них), либо можно объединить все операции в один файл сценария, при запуске которого начнет выполняться процедура сжатия данных в папке WinSxS. Скачать готовый командный файл можно тут: compress_winsxs.bat

    Данный скрипт можно использовать постоянно в процессе эксплуатации системы, т.к. после установки новых обновлений и программ в каталоге WinSxS будут появляться новые «несжатые» файлы.

    Примечание. В сети гуляет еще один скрипт, позволяющий уменьшить размер папки WinSxS —   WinSxSLite (от Christian Bering Boegh ). Данный скрипт согласно информации разработчика ищет на диске самые последние файлы библиотек и создает ссылки на них со всех предыдущих версий и удаляет неактуальные версии. Считаем необходимым отговорить наших читателей от использования скрипта WinSxSLite, т.к. несмотря на довольно толковую идею, результат его выполнения является непредсказуемым, и, несмотря, на уменьшение размера каталога WinSxS, часть функционала Windows перестает работать.

    winitpro.ru

    Уменьшение размера папки Winsxs в Windows 7 или как пользоваться WinsxsLite.bat

    Внимание!!! (предупреждения)

    1) Описываемая процедура очень опасна для ОС, поэтому перед её применением необходимо сделать снимок диска или партиции с помощью Acronis True Image или подобной программы.

    2) Процедура выполняется длительное время (часы) — поэтому планируй время.

    3) Процедура не может обрабатывать файлы заблокированные какими-нибудь процессами. Более того, если процедура не сможет нормально обработать заблокированные файлы, резко возрастает риск что  потом что-то не заработает или система будет испорчена. Поэтому на время выполнения процедуры, необходимо закрыть все выполняющиеся приложения и остановить все возможные службы. Но еще лучше выполнять процедуру в save mode, т.к. в этом случае гораздо меньше файлов заблокировано системой.

    ———————————————————————————————————————- 

    Ну вот опять столкнулся с нехваткой места на диск C: на домашнем компе.

    Анализ с помощью программы FolderSizes показал, что больше всего места на диск занимает папка C:Windows, а в ней папка winsxs.

    Начал изучать проблему с чтения статей. Вот, например, от одного из разработчиков Windows

    What is the WINSXS directory in Windows 2008 and Windows Vista and why is it so large?

    Наткнулся на очень интересную статью (правда она для Vista, у меня 7)

    Уменьшение размеров папки winsxs©Bobrovsky DmitryКстати, есть и официальная статья Microsoft по этой проблеме — How to Alleviate Disk Space Pressure Caused By a Large Windows Component Store (WinSxS) Directory — но рекомендации которые там даются стандартные и навряд ли помогут освободить место.©Bobrovsky DmitryОказывается, что папка winsxs – это основное хранилище системных файлов, на которое делаются hard-линки. Механизм работы с этим хранилищем далек от идеала (IMHO). Но некий парень Christian Bering Boegh написал WinsxsLite.bat, который перенаправляет ссылки на самую последнюю версию файла, а все остальные версии удаляет, еще перенаправляются и удаляются файлы ненужных языков.

    Батник кстати крут, этот Кристиан просто монстр в написании батников, такое сотворить не каждый сможет…

    В Help.htm у него написано что батник делает необратимые изменения, т.е. если что пойдет не так ,то система будет испорчена и понятное дело лучше предварительно снять образ диска.

    Итак, утилиты vsp1cln.exe и compcln.exe я не делаю, т.к. у меня Windows 7, а они вроде как предназначены для Windows Vista.

    Т.к. я скачал батник с набором всех необходимых утилит и Config.txt уже был вроде как правильно настроен, то осталось просто запустить батник. Если Config.txt нет, можно просто запустить батник и выбрать [q], Config.txt будет сформирован.

    Я решил делать по алгоритму

    Phase 1 scanPhase 1 applyRebootPhase 2 scanPhase 2 applyReboot

    Для начала определю размер папки winsxs (через проводник) – это для контроля.

    Размер: 4,16 ГбРазмер на диске: 4,22 ГбФайлов: 29752Папок: 7037

    Вообще автор батника утверждает что размер папки winsxs в проводнике считается неправильно. Поэтому будут в ходе эксперимента определять размер с помощью его батника (меню [w]).

    ———————————————————————————————————————

    1) Скачиваю WinsxsLite.bat. (Если там уже нет можно поискать по WinsxsLite.bat).Dmitry Bobrovsky2) (Рисунок 1). Запускаю батник WinsxsLite.bat. При запуске ищутся файлы мультимедийные файлы примеров и формируется батник для их удаления DelWinsxsSampleMedia.bat (выполняю его — это освобождает 30Мб для меня). После этого смотрю размер папки winsxs — [w]. (Определение размера так же может быть длительным, на моем стареньком ноутбуке, примерно минут 15 шло).Dmitry Bobrovsky

    Рисунок 1.

    3) (Рисунок 2). Далее выбираю [1] и [s] (scan), идет долгое сканирование (у меня порядка 1 часа). В результате формируется файл ToDo1.txt с результатами сканирования. После этого еще раз выбираю [1], но теперь меню становиться разнообразнее и я выбираю [a] (applay). Опять идет процесс (здесь уже быстрее минут 15-20).

    Рисунок 2.

    4) (Рисунок 3). После выполнения первой фазы — 18 pending hardlink. Делая первый раз, выполнил здесь [A]uto start, который нихрена не отработал на Windows 7. Делая второй раз выполнил Re[s]hchedule activation  — ЭТО РАБОТАЕТ, т.е. все линки были отработаны.

    Рисунок 3.

    5) (Рисунок 4). Проверяю размер. Я так понимаю что нужно ориентироваться на free space. Было 15064 Мб стало 15829 Мб = 765 Мб освободилось.

    Рисунок 4.

    6) Перезагрузка. Думаю что в ней нет необходимости, но на всякий случай…

    7) (Рисунок 5). Запускаю батник WinsxsLite.bat и выбираю [2] и [s]. Идет процесс сканирования (гораздо быстрее чем в первой фазе, минут 10-15). Во время сканирования формируется файл ToDo2.txt. После сканирования  выбираю [2] и [a]. Идет процесс применения. На рисунке 5 видно что батник ругнулся что у меня ToDo2.txt устарел. Именно поэтому в документации говориться что лучше сканирование и применение делать в одно время иначе, если сделать скан, а потом через несколько дней применить результаты ToDo*.txt, его содержимое может стать неактуальным и система может быть испорчена.

    Рисунок 5.

    8) Перезагрузка.

    9) Запускаю WinsxsLite.bat. Программа мне говорит что ОС не была перезагружена и требуется перезагрузка (с чего-бы это?). Ну да ладно перезагружаюсь еще раз.

    10) Запускаю WinsxsLite.bat. Программа говорит что нужно обработать pending hardlink и предлагает сделать либо Auto start либо Exit. Делаю [A]uto start. Перезагружаюсь.

    11) Запускаю WinsxsLite.bat. Срабатывает автостарт, чего-то делает.

    Всё наконец-то всё завершено.

    Смотрю размеры (Рисунок 6). 16278-15064= 1214 Мб. Ого целый гигабайт освободился.

    Рисунок 6.

    ——————————————————————————————-

    Можно еще сделать [R]elocate folders – позволяет переместить системные папки на другой диск. Полагаю этот пункт стоит использовать только в случае крайней нужды. Я его не делал.

    И кстати по проводнику получается что места освободилось совсем мало и почему-то разница в 12 файлов… (Проводник реально неправильно показывает размер папки winsxs).

    Размер: 4,14 ГбРазмер на диске: 4,20 ГбФайлов: 29740Папок: 7037

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

    Запись Уменьшение размера папки Winsxs в Windows 7 или как пользоваться WinsxsLite.bat впервые появилась Dmitry Bobrovsky Blog

    dmitrybobrovsky.ru

    WinSxS: что это за папка

    Эта директория обычно раздражает владельцев ПК с операционной системой Windows из-за своего объема и к тому же со временем только увеличивающегося. И главное, раньше не было достаточно безопасного метода снизить объем занимаемого ей на дисковом пространстве места. Удаление WinSxS приводила к сбоям в работе Windows либо к падению ОС.

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

    Кратко об этой папке

    Эта директория с резервными файлами ОС. Поэтому после каждой процедуры обновления ее размер увеличивается. Находится она на C:\Windows\winsxs и является системной. Благодаря ей можно удалить обновления и выполнить откат системы при возникновении проблем с Windows. В этой директории хранятся все данные об операционной системе и если ее удалить, то вероятнее всего система больше загружаться не будет.

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

    Можно ли очищать содержимое WinSxS?

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

    Предупреждение! Если удалить вручную компоненты, содержащиеся в WinSxS, то последствия вмешательства непредсказуемы.

    Правильный процесс освобождения памяти диска

    Средство Windows, которым потребуется воспользоваться, чтобы правильно удалить некоторое содержимое папки, имеет наименование «DISM».

    Для запуска этого приложения выполнить действия:

    1. через «Пуск» войти в строку поиска и набрать «CMD», далее кликнуть «Ввод»;
    2. в отобразившемся меню будет представлен перечень файлов, в котором надо найти «DISM»;
    3. в контекстном меню этого файла кликнуть на «Запуск от имени Администратора»;
    4. далее ввести «Dism.exe /online /cleanup-image /AnalyzeComponentStore»;
    5. в отобразившемся окне за пунктом «Component Store information» посмотреть на цифру в Гб – она показывает, сколько памяти занимает вся папка, а в самом конце указывается количество файлов, которые допускается безопасно удалить (они уже заменены на новые).
    6. вновь открыть командную строку и набрать «cleanmgr», далее кликнуть «Ввод»;
    7. после этого запустится приложение;
    8. далее следует убрать отметки со всех пунктов оставив только «Очистка обновлений Windows» и нажать на «Ок»;
    9. дождаться окончания процедуры и перезагрузить компьютер;
    10. после запуска компьютера можно проанализировать количество освобожденного дискового пространства.

    Такое выполнение действий не приведет к полному удалению каталога WinSxS. Исчезнут лишь устаревшие данные, поэтому можно предположить, что очистится лишь небольшое количество памяти на жестком диске. Это зависит от того, насколько давно установлена ОС на компьютере.

    Процесс для Windows 10

    Процесс очистки каталога WinSxS в «Десятке» включает следующие действия:

    1. с админправами в командной строке ввести «Dism.exe /online /cleanup-image /AnalyzeComponentStore», далее кликнуть «Ввод»;
    2. дождаться окончания процесса анализа ОС каталога, после которого отобразится рекомендация о целесообразности выполнения очистки;
    3. в случае если Windows 10 порекомендовала почистить папку, то необходимо ввести «Dism.exe /online /cleanup-image /StartComponentCleanup» и кликнуть «Ввод». Далее все произойдет автоматически.

    Важно! В десятой ОС предусмотрено такое условие, только если объем каталога WinSxS больше 10 Гб, то существует целесообразность ее почистить.

    Процесс для Windows 8

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

    Процесс очистки каталога WinSxS в «Восьмерке» включает следующие действия:

    1. через «Поиск» открыть приложение с наименованием «Очистка диска»;
    2. потом в этой утилите нажать на «Очистить системные файлы»;
    3. далее поставить галочки напротив данных, которые можно удалить в закладке «Очистка обновлений Windows» и кликнуть «Ок».

    Этот способ является наиболее безопасным.

    Процесс для Windows 7

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

    Для инсталляции приложения необходимо сделать следующее:

    1. открыть «Панель управления»;
    2. далее войти в закладку «Центр обновления Windows»;
    3. потом кликнуть «Поиск обновлений» и дождаться окончания процесса;
    4. нажать на раздел, показывающий перечень необязательных обновлений;
    5. найти обновление KB2852386 от 11.2013 г. и установить его;
    6. теперь компьютер обладает новой программой «Очистка диска».

    По аналогии с алгоритмом действий в Виндовс 8 можно почистить папку WinSxS.

    Похожие записи:

    windowstune.ru

    Папка Windows Winsxs

    ≡  22 Декабрь 2014   ·  Рубрика: Компьютерный ликбез      · 2 790 Просмотров

    Как уменьшить Winsxs? Данный пост по праву можно считать продолжением этой статьи. Свободное место на диске и его дефицит рано или поздно становится значимым вопросом для любого юзера. Одно дело, когда «хард» заполнен нужной информацией, а другое — когда непонятно куда свободное место пропадает.

    Как очистить папку Winsxs

    Совершенно незнакомая для обычного пользователя, но хорошо известная для продвинутого. В ней хранятся старые компоненты системы. И чем дольше у вас установлена операционная система, тем больше места она занимает. Смысл такой. Когда происходит установка любых обновлений ОС, старые файлы сменяются новыми. Однако на случай багов прошлые экземпляры все-таки хранятся. Посредством жестких ссылок файлы попадают из папки Виндоус в WinSxS. Причем некоторые файловые менеджеры считают данные ссылки как действительный объем. Происходит неверное указание на оный. Тогда как на самом деле WinSxS весит в пределах 15 Гб. При желании избавиться от устаревших файлов в системе предлагаю воспользоваться советами ниже.

    Нажимаем сочетание клавиш +R. Вводим команду cleanmgr. В открывшемся окне выставляем галочку напротив «Очистка обновлений Windows»

    Перезагружаемся.

    P.S.: Если у вас вышеописанной функции нет, то это значит, что вы не обновляли операционку

    P.S.2: Windows 8 и 8.1 имеют автоматическую функцию очищения. Активируется она через 30 дней после установки обновлений.

    Будет интересно почитать

    xn--e1agaedegkgsq.xn--p1ai

    Как уменьшить размер папки WinSxS в Windows 7

    Что такое за папка WinSxS?

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

    Почему же эта папка такая большая?

    На самом деле реальный размер этой папки не превышает 15 Gb, так как большинство файлов из папки Windows проецируется в нее с помощью жестких ссылок. Поэтому файловые менеджеры могут показать размер этой папки более 15 Gb, так как воспринимают объём жестких ссылок.

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

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

    Совет перед очисткой

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

    Очистка WinSxS в Windows 7

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

    Для этого перейдите: Панель управления\Все элементы панели управления\Центр обновления Windows.

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

    Найдите в этом списке обновление KB2852386, после чего отметьте его галочкой. После этого нажмите Ок, и установите обновления. Дождитесь конца установки.

    2. Теперь можно приступить к освобождению места на системном диске:

    Откройте мой компьютер, щелкните по системному разделу правой кнопкой мыши (как правило это диск С), и зайдите в свойства.

    Нажмите кнопку очистка диска, и найдите пункт «Очистка обновлений Windows», и отметьте его галочкой.

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

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

    Когда процесс очистки диска будет завершен, перезагрузите компьютер.

     

    Удалится ли папка WinSxS после очистки?

    Нет, но число подпапок и файлов в ней уменьшится, а следовательно и ее объем.

     

    Что конкретно удаляется?

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

    Статья помогла? Поблагодари автора, он ведь старался

    loginit.ru