Уменьшение размеров папки winsxs / Хабр

Многие обладатели Windows Vista и 7 наверняка сталкивались с тем, что папка Windows c ходом времени разрастается как на дрожжах. Я мирился с этим до тех пор, пока 40-гиговый раздел с системой не начал периодически выдавать мне сообщения о том, что свободное место на нем заканчивается.

Я нашел один чудесный инструмент, магия которого позволяет уменьшить размер папки winsxs без потери производительности/стабильности/данных. Сначала я проделал все описанное под катом на своем домашнем буке, а сейчас для чистоты эксперимента повторю на рабочем.

0. Немножко теории


Вообще о том, как Windows использует пространство системного диска, сказано немало, поэтому здесь буду краток.

pagefile.sys — файл подкачки. Можно отключить при большом размере оперативки, можно отрегулировать размер вручную.

hiberfil.sys — файл, в который сохраняется снимок(снэпшот) оперативной памяти при «засыпании» компьютера. В меню «Очистка диска» кроме всего прочего есть пунктик «Очистка файлов режима гибернации». Если вы этим режимом не пользуетесь, можете очищать. Если же вы регулярно «засыпаете» свой комп/ноут, то, очистив этот файл, вам придется воспользоваться вот этим советом, или попросту ввести в командной строке powercfg -h on && shutdown -r.

Личные папки пользователей (Мои документы, Рабочий Стол, Appdata, Главное меню и проч.) можно безболезненно перенести в другое место как через свойства нужных папок, так и через regedit или групповые политики. Это разговор отдельный, здесь я его рассматривать не буду.

Нужно отметить, что любые апдейты и апгрейды в системе Windows обратимы, то есть установив Vista Service Pack 2 (6.0.6002), вы можете откатиться назад до 6.0.6001, а потом и до исходной сборки. Для того, чтобы сделать все установленные в системе обновления необратимыми, необходимо воспользоваться двумя системными утилитами:
vsp1cln.exe — подметает мусор после установки Vista SP1.
compcln.exe — делает то же самое для SP2.

Система создает точки восстановления по требованию и автоматически при установке драйверов, важных обновлений, по расписанию или по требованию. Восстановление использует до 15% пространства на каждом из дисков, на котором оно задействовано. Его можно отключить, можно через «Очистку диска» на вкладке «Дополнительно» оставить только последнюю точку восстановления для экономии места.

Про папку winsxs разработчиками была написана целая статья о том, что мол, это основное хранилище ОС, а все остальные системные файлы — это типа хардлинки, бла-бла-бла…, и да, примите как божий дар то, что со временем размер папки будет только увеличиваться.

1. Подготовка


Windows Vista Business 32-bit.

Сначала я выяснил размер папки winsxs — около 4,5 гигов.

Далее методично были установлены все важные и рекомендуемые обновления по состоянию на 8.10.2009, включая SP1 и SP2. После завршения всех процедур, я скачал чудесный Scanner, чтобы нагляно оценить масштаб бедствия.

Установка обновлений преобразила папку Windows.

Теперь по порядку:

— vsp1cln.exe;

— compcln.exe — работала около пяти минут.

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

2. Winsxslite


Это даже не программа — это .bat файл, уменьшающий размер папки winsxs. Он написан неким Christian Bering Boegh и распространяется «as is», что лично у меня вызвало некоторые подозрения, развеять которые мог лишь успешно отработавший скрипт. По ссылке можно найти последнюю версию скрипта (1.86) с комментариями автора.

Работа скрипта включает две фазы:

1. Поиск в папках Program Files и Windows файлов, идентичных файлам в winsxs.

2. Замена старых версий файла в winsxs жесткими ссылками на более новые версии файла.

Работать можно как с онлайн-системой (то есть с работающей ОС) так и с образом ОС.

Работа с онлайн-системой выглядит так:

— Phase 1 scan;

— Phase 1 apply;

— Перезагрузка;

— Phase 2 scan;

— Phase 2 apply;

— Перезагрузка.

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

Для работы скрипта используется также конфигурационный файл config.txt, в котором указаны исключения для первой фазы (логи, temp, cache и т.п.), и языковые приоритеты для второй фазы (неиспользуемые файлы локализации заменяются на хардлинки соответствующих файлов других языков), в конфигу по умолчанию прописывается «da-dk=KEEP», что меняется на нужную строку ru-ru=KEEP, uk-ua=KEEP или другую необходимую.

Winsxslite будет работать только при наличии следующего ПО:

— SubInACL v5.2.3790.1180;

— PendMoves v1. 1 and MoveFile v1.0;

— Ln — Command Line Hardlinks;

— Fcmp v1.6 — автор рекомендует пользоваться именно 1.6;

— MD5File;

— StringConverter v1.2.

Все установленные файлы я сложил в папку с winsxslite. Если кому скучно выполнять все процедуры самому, вот ссылка. Там собственно winsxslite, всё необходимое ПО плюс конфиг с исправленным da-dk. Конфиг можно удалить. При первом запуске winsxslite будет создан дефолтный конфиг и help-файл.

3. Результаты

Взглянув на результаты, я понял, что совершил стратегическую ошибку — я взял для теста ноутбук, который почти не использовался в работе. То есть, возраст ОС составлял от силы пару дней, за ноутбуком фактически никто не работал. На домашнем же компе результаты были более ощутимыми. Там папка winsxs похудела гигов на 8, но до тех же самых 14,8.

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

Как бы то ни было, оба пациента не пострадали, а winsxslite оказался отличным подспорьем в деле уменьшения объема ненасытной винды.

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

P.S. Статья про использование дискового пространство в Win7. Никакие сторонние программы для кастрации системы (типа vLite) не использовались.

Почему «Защита ресурсов Windows не может выполнить запрошенную операцию»?

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

Содержание

  • Причины ошибки
  • Как исправить ошибку?
    • Метод 1: запускаемся в безопасном режиме
    • Метод 2: проверяем наличие папок PendingDeletes и PendingRenames
    • Метод 3: сканируем состояние файловой системы
    • Метод 4: снимаем ограничение с папки WinSxS
    • Метод 5: запускаем восстановление системных компонентов

Причины ошибки

Многие пользователи сразу же думают о том, что если даже SFC не работает, то это уже не исправить. В некоторых случаях эта проблема действительно возникает по причине сильного повреждения системных файлов, восстановление которых невозможно, необходимо производить переустановку ОС. Но в большинстве случаев, данная неисправность говорит о том, что при запуске инструмента возникает проблема, по которой он не может получить доступ к каталогу WinSxS, где располагаются критически важные системные файлы. В целом, можно выделить такие основные причины появления данной ошибки:

  • повреждение файловой системы;
  • наличие нечитаемых секторов на жестком диске;
  • отсутствие прав администратора устройства;
  • наличие вирусов в ОС.

Не стоит паниковать, проблему можно попытаться решить самостоятельно. Не нужно сразу спешить переустанавливать Windows или вызывать мастера.

Как исправить ошибку?

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

Метод 1: запускаемся в безопасном режиме

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

  1. Открыть диалоговое окно «Выполнить», нажав кнопки Win + R.
  2. После этого ввести команду «msconfig» и нажать кнопку Enter.
  3. В открывшемся окне перейти на вкладку «Загрузка».
  4. В параметрах загрузки установить галочку напротив «Безопасный режим».
  5. Перезагрузить компьютер.

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

Метод 2: проверяем наличие папок PendingDeletes и PendingRenames

Следует убедиться в том, что папки PendingDeletes и PendingRenames есть в системе. Именно эти каталоги используются во время проверки, если они отсутствуют, то ошибка о невозможности выполнить запрошенную операцию будет вполне логичной. Инструмент для проверки системы обращается к папкам, но так как их нет, далее работать служба попросту не может, не удается записывать файлы логов, что делает сканирование бессмысленным. Папки должны находиться в системной директории %WinDir%\WinSxS\Temp. Необходимо зайти по этому пути и посмотреть, если ли там разделы с названием PendingDeletes и PendingRenames. Если их нет, можно создать вручную.

Метод 3: сканируем состояние файловой системы

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

Как проанализировать системные файлы:

  1. Открыть диалоговое окно «Выполнить», нажав кнопки Win + R.
  2. После этого ввести команду «cmd» и нажать кнопку Enter.
  3. Откроется командная строка.
  4. В этой строке нужно указать команду chkdsk c: /f /r для проверки и восстановления файлов.
  5. Перезагрузить компьютер.

Процедура длительная, необходимо дождаться ее окончания. Запустится проверка после перезагрузки компьютера, так как при загруженной ОС некоторые системные файлы заняты теми или иными процессами, проверить их в этом случае будет невозможно. Можно также указать просто команду chkdsk c: /f, исключив /r, в этом случае утилита будет проверять систему и записывать ошибки, но не будет пытаться восстановить файлы.

Метод 4: снимаем ограничение с папки WinSxS

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

Как снять ограничения с WinSxS:

  1. Открыть диалоговое окно «Выполнить», нажав кнопки Win + R.
  2. После этого ввести команду «cmd» и нажать кнопку Enter.
  3. В командной строке ввести команду icacls c:/windows/winsxs и нажать Enter.
  4. Перезагрузить систему.

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

Метод 5: запускаем восстановление системных компонентов

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

Для восстановление системных компонентов нужно выполнить следующее:

  1. Открыть командную строку.
  2. Ввести команду Dism /Online /Cleanup-Image /ScanHealth для проверки состояния системных компонентов.
  3. Если выполнение этой команды говорит о том, что нужно восстановить компоненты, то идем далее.
  4. Вводим команду Dism /Online /Cleanup-Image /RestoreHealth для восстановления, компьютер должен быть подключен к интернету, так как может идти загрузка файлов с сервера Microsoft.

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

Компьютеры #sfc #Windows 10

временных файлов — очистка C:\Windows\WinSxS\Temp\PendingDeletes и PendingRenames

спросил

Изменено
4 года, 5 месяцев назад

Просмотрено
85 тысяч раз

Папки PendingDeletes и PendingRenames во временной папке Windows имеют размер около 1 ГБ. Есть ли способ сохранить или удалить эти папки?

C:\Windows\WinSxS>10 ГБ
C:\Windows\WinSxS\Temp\PendingDeletes 800 МБ
C:\Windows\WinSxS\Temp\PendingRenames 210MB

У меня нет ожидающих установки. Моя операционная система — Windows 8.1. Есть ли способ полностью очистить папку WinSxS? Я уже использовал утилиту очистки при щелчке правой кнопкой мыши по диску. Но сильно не изменился!

Заранее спасибо

  • windows-8
  • временные файлы
  • очистка диска
  • winsxs

5

Безопасным способом очистки WinSxS является служба обслуживания образов развертывания и управления ими (DISM) Windows. Выполнение следующего в приглашении CMD с повышенными правами теоретически должно удалить часть лишнего багажа:

DISM/онлайн/Cleanup-Image/StartComponentCleanup

Однако для выполнения этой задачи должен быть запущен TrustedInstaller , который не настроен в Windows 8 по умолчанию . Для запуска TrustedInstaller может потребоваться сначала включить TelnetServer , а затем ввести

.

чистый запуск TrustedInstaller

После успешного запуска DISM (на моем ПК я обнаружил, что DISM работает только тогда, когда Windows была запущена в безопасном режиме), вы можете отключить TelnetServer и остановить TrustedInstaller.

После всей этой папки можно найти лишь незначительное уменьшение размера WinSxS. В моем случае он был уменьшен с ~ 10 ГБ до ~ 7 ГБ. вздох.

[Гораздо проще использовать Janitor для очистки старых установок и обновлений Linux, также известных как «мусор», но Windows — это не Linux.]

Зарегистрируйтесь или войдите в систему

Зарегистрируйтесь с помощью Google

Зарегистрироваться через Facebook

Зарегистрируйтесь, используя адрес электронной почты и пароль

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Опубликовать как гость

Электронная почта

Требуется, но не отображается

Нажимая «Опубликовать свой ответ», вы соглашаетесь с нашими условиями обслуживания, политикой конфиденциальности и политикой использования файлов cookie

.

windows — Почему папка /winsxs становится такой большой и можно ли ее уменьшить?

Задавать вопрос

спросил

Изменено
4 года, 5 месяцев назад

Просмотрено
121 тысяч раз

Виртуальная машина Vista, которую я использую, имеет только виртуальный жесткий диск объемом 10 ГБ, и я беспокоюсь о том, что со временем на нем может закончиться свободное место.

Я использовал TreeSize для поиска виновных.

Что такое папка Windows Side By Side? Ну, это довольно хорошо объяснено здесь.

Все компоненты операционной системы находятся в папке WinSxS — фактически мы называем это место хранилищем компонентов. Каждый компонент имеет уникальное имя, которое включает версию, язык и архитектуру процессора, для которых он был создан. Папка WinSxS — это единственное место, где компонент находится в системе, все остальные экземпляры файлов, которые вы видите в системе, «проецируются» посредством жесткой ссылки из хранилища компонентов. Позвольте мне повторить последний пункт — существует только один экземпляр (или полная копия данных) каждой версии каждого файла в ОС, и этот экземпляр находится в папке WinSxS. Если смотреть с этой точки зрения, папка WinSxS на самом деле представляет собой всю ОС, называемую «плоской» в операционных системах нижнего уровня. Это также объясняет, почему вам больше не будет предлагаться носитель при выполнении таких операций, как проверка системных файлов (SFC), или при установке дополнительных функций и ролей.

Это объясняет, почему папка изначально большая, но не то, почему она становится больше со временем — ответом на этот вопрос является обслуживание. В предыдущих версиях Windows элементарной единицей обслуживания был файл, в Windows Vista — компонент. Когда мы обновляем конкретный двоичный файл, мы выпускаем новую версию всего компонента, и эта новая версия хранится вместе с исходной в хранилище компонентов. Более старшая версия компонента проецируется в систему, но старая версия в магазине не трогается. Причина этого — третья часть того, почему хранилище компонентов становится таким большим.

Многие люди тоже жалуются на размер папки /winsxs:

Коллега недавно получил обновление своего рабочего ноутбука раз в два года и как раз загружал свой новый ноутбук с Vista. По какой-то причине его жесткий диск C: был разделен всего на 25 ГБ, а остальное место зарезервировано для гораздо большего диска D:.

В любом случае, после загрузки многих обновлений Windows у него почти не осталось места на диске C:, и по какой-то причине каталог WinSxS раздулся до более чем 8 ГБ.

Хотя я знал, для чего предназначен каталог WinSxS (Windows Side-by-Side), я не совсем понимал, почему этот каталог так быстро увеличивается в размерах при обычных обновлениях операционной системы.

Меня не волнуют все эти дубликаты файлов для безопасности, но я действительно забочусь о взрыве виртуальной машины из-за ошибки нехватки места на диске. Итак… можно ли каким-либо образом безопасно сократить /winsxs? Не похоже, что это может быть..

Администраторы ни по какой причине не должны брать на себя ответственность за очистку каталога /winsxs — это может помешать правильной работе Центра обновления Windows и MSI впоследствии. Предотвращение случайного удаления из каталога достигается за счет размещения надежного дескриптора безопасности в каталоге, который наследуется его дочерними элементами.

Если эта папка /winsxs станет еще больше, мне придется заново создать образ этой виртуальной машины… чего я действительно не хочу делать!

  • windows
  • дисковое пространство
  • winsxs

10

Существует хорошая команда для очистки после установки Windows 7 с пакетом обновления 1 (она сэкономила мне около 3 ГБ):

 DISM /online /cleanup-Image /spsuperseded
 

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

15

TL;DR

winsxs фактически содержит жесткие ссылки. Это не занимает столько дополнительных данных, как вы думаете.

Жесткая ссылка похожа на «ярлык» или «указатель» на фактический файл, расположенный где-то на вашем диске. Жесткая ссылка сама по себе не занимает места на жестком диске: она просто служит перенаправлением.

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


winsxs — это не проблема

…это решение! (Ну, в основном .)

Резюме «Отмечено как ответ Ронни Вернона, MVP, модератора» здесь:

Ничего себе, долгая дискуссия о хардлинках и winsxs. Во всяком случае, вот некоторые
обобщил пункты того, что я понял о том, как все это работает.

Для начала ответьте на вопрос ОП с опубликованным идеальным ответом.
выше Andre.Ziegler, вы не трогаете winsxs. Может быть, некоторые из
файлы могут быть обрезаны как mp3, avi и т.д., но остальная часть
системные файлы следует оставить в покое
. Я тоже использую расширение Link Shell
как указано выше Ронни Верноном, простой способ увидеть, какие сложные
связаны (красная стрелка) и являются простыми файлами.

Перед тем, как попасть сюда, я видел во многих местах людей, которые просили
средство очистки после установки пакета обновления 1 (SP1) для Windows 7, например, vsp1cln. Есть
нет специального инструмента, все это интегрировано в очистку диска
услуга. Одно замечание, которое я хотел бы сделать здесь, заключается в том, что даже если опция
говорит, что удалит несколько сотен МБ после того, как я очистил свой диск
служба удалила около 3 ГБ лишних файлов, поэтому она варьируется от
система к системе. Забавно, теперь у меня даже больше места, чем было раньше
установка SP1. Красавчик, МС.

Что касается жестких ссылок, меня позабавила путаница, возникшая вокруг
их. Я не специалист по Linux и обычно использую только программные ссылки…
мне их хватает, но люди не поняли, как работают тяжелые
и как считается размер.

Группа выбранных файлов, независимо от того, связаны они или нет, всегда будет считаться
сумма. Это означает, что если я возьму файл размером 10 МБ и сделаю 2 жесткие ссылки,
выбор всех трех из них будет иметь 30 МБ, и это правильно
размер, потому что в отличие от программных ссылок, которые связаны с файлом
исходная запись таблицы основных файлов и имеет 0 байтов, жесткие ссылки
относящиеся к самим данным
, имеют свою запись в MFT но указывают на
тот же адрес данных, очевидно, имеющий в качестве размера размер фактического
данные, то же время, атрибуты и так далее. Почему, ниже.

Сколько осталось на диске? Просто: ровно столько, сколько у накопителя
отчеты о собственной собственности
. Не выбирайте все файлы, скрытые и
не скрыто на C и делает сравнения, или с использованием инструментов , которые делают это
автоматически, потому что он не покажет фактическое использование жесткого диска. Почему?
Потому что:

  1. эта операция составляет список всех выбранных файлов, включая жесткие ссылки, как отдельные файлы, берет каждый из них и добавляет размеры
    вверх, свойства дисков подсчитывают фактические сохраненные данные
  2. будут учитываться не все файлы, защищенные от обхода папки и файлы от чтения не будут учитываться и система
    Volume Information обычно имеет очень большие файлы, защищенные только в этом
    способ
  3. этот номер полезен только в случаях передачи файлов, если файлы, ссылки и т. п. нужно скопировать на DVD или NAS, вот сколько они будут
    занимают, а ссылки не сохранятся так как они NTFS
    определенные функции, недоступные или доступные в различных формах в рамках
    ISO, UDF, NFS и другие файловые системы, но они будут клонированы.

Проведите тест… скопируйте 10-мегабайтный файл a.exe с другого диска и
обратите внимание, как свободное место уменьшается на 10 МБ. Сделать жесткую ссылку (mklink
/H b.exe a.exe). Теперь эти два выбранных файла будут «использовать» 20 МБ в
свойства выбора
, но на самом деле проверено только 10мб на диске
properties
, который будет иметь такое же свободное пространство, как и после
копия файла. Удалите один, любой другой, свободное место останется
такой же. Теперь удалите последний, и пространство увеличится на 10 МБ. Был
есть ли вред? НЕТ.

Что такое winsxs? Гораздо лучший dllcache. Куда с dllcache в XP
у нас были копии файлов, которые фактически увеличили использование размера, так как
они были клонированы, это действительно улучшает использование, но не полностью
защита (от вирусов). Если мошеннический деинсталлятор думает, что должен
удалить некоторые библиотеки времени выполнения из System32, это удалит только
ссылки, но не данные, то ссылки будут воссозданы во время
сохранение использования пространства данных на минимально возможном уровне, лучше, чем архивирование
winsxs в CAB-файлах и наличие CAB-файлов рядом с исходными файлами. Также
winsxs обеспечивает сериализацию, разделяя файлы на одинаковые
имя, но другая версия, ради разработчика, что хорошо
/ плохо, это делает их ленивыми для правильного кода, но это помогает, когда
они больше не хотят кодировать.

Я сделал это, чтобы помочь любому, кто приземлится здесь по тем же причинам, что и я.
делал… чрезмерное «использование пространства» winsxs после SP1. И я надеюсь, что это
был полезен.

1

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

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

Сжав все эти резервные каталоги в каталоге Windows, я смог уменьшить размер каталога с 6,5 ГБ до 5 ГБ без заметных побочных эффектов. Использование его для некоторых ваших файлов за пределами каталога Window еще больше растянет ваши 10 ГБ.

12

Если у вас Vista и установлен SP2, вы можете очистить старые системные файлы с помощью нового инструмента Service Pack Clean-up Tool .

  1. Нажмите «Пуск»> «Все программы»> «Стандартные»> «Командная строка» или нажмите «Пуск»> «Выполнить» и введите cmd, чтобы открыть командную строку Windows
  2. .

  3. Выполните команду «Compcln.exe». Путь «c:\Windows\System32\compcln.exe».
  4. Пользователям будет задан вопрос о том, следует ли постоянно сохранять Vista SP2 в системе.
  5. Введите «Y» и нажмите Enter, система начнет выполнять очистку компонентов Windows.

4

В Windows 8 вы можете уменьшить размер папки WinSxS, удалив компоненты Windows:

 DISM. exe /Online /Disable-Feature /Featurename: /Remove
 

Важным моментом является параметр /Remove , который является новым для Windows 8 .

Больше всего места в WinSxS занимают обновления Windows, которые вы устанавливаете с течением времени. В Windows 8/Windows 10 вы можете обнаружить и удалить обновления, которые заменены более новыми обновлениями (например, более новыми кумулятивными обновлениями IE), выполнив эту команду:

 dism.exe / онлайн / образ очистки / startcomponentcleanup
 

или запустите мастер очистки диска и выберите «Очистка Центра обновления Windows».

Это обновление запускает глубокую очистку WinSxS и сжимает все файлы DLL/Exe из WinSxS, которые в данный момент не используются, в дельта-файл меньшего размера:

Посмотрите на разные размеры файлов.

Windows 8.1 добавляет новые команды DISM. /startcomponentcleanup получает новый параметр /ResetBase , который делает ваше последнее обновление постоянным и удаляет все старые файлы, чтобы сэкономить больше места.

Вы также можете запустить новую команду dism /online /cleanup-image /analyzecomponentstore для анализа папки WinSxS:

Теперь она сообщает вам, когда следует запустить очистку для экономии места.

3

Вы можете использовать VSP1CLN.EXE, чтобы сделать SP1 постоянным, что, согласно этой странице, освободит компоненты, замененные SP1.

1

Хорошие новости! В настоящее время существует официально санкционированный Microsoft метод очистки папки WinSXS для Windows 7 с пакетом обновления 1 (SP1).

  1. Установите исправление 2852386 — вы можете загрузить его вручную или подождать, пока оно появится через Центр обновления Windows 9.0020
  2. Это добавляет новый параметр в мастер очистки диска (в разделе «Очистка системных файлов»), который можно включить для «Очистка Центра обновления Windows». Отметьте эту опцию.
  3. Нажмите OK

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

0

Похоже, наконец-то появился способ сделать это в Windows 8.1 с пакетом обновления 1 и Windows Server 2012 R2 9.0110 .

Инструмент анализа хранилища компонентов:

Dism.exe /Online /Cleanup-image /AnalyzeComponentStore

В конце сканирования пользователь получает отчет о результатах (фактический размер папки winsxs), например:

Уборка склада компонентов:

Сегодня конечный пользователь должен запускать очистку хранилища компонентов вручную либо путем запуска DISM, либо с помощью мастера очистки диска. Чтобы сделать Component Store Cleanup более полезным для среднего конечного пользователя, она будет добавлена ​​в задачу обслуживания, автоматически экономя место на диске для конечных пользователей. Чтобы включить это, будет внесено изменение, позволяющее удалять замененные драйверы входящих сообщений без перезагрузки (сегодня все установки/удаления драйверов, выполняемые CBS, требуют перезагрузки).

  1. Dism.exe /онлайн /Cleanup-Image /StartComponentCleanup

  2. Средство очистки диска, кнопка очистки системных файлов.

  3. schtasks.exe /Run /TN "\Microsoft\Windows\Servicing\StartComponentCleanup"

1

Dism++ — это то, что вам нужно (https://www.chuyu.me/en/index.html).

Вы сэкономите гигабайты места…

Вам нужно выбрать «Заменены сборки WinSxS». Если вы сделаете это — вы получите предупреждение о том, что эти установленные обновления не могут быть удалены. Нажмите «ОК», затем отсканируйте

Это даст вам представление о том, сколько места вы сэкономите. Нажмите «Очистка», и это должно очистить это пространство.

5

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

Эти инструкции показывают, как это сделать:

 sc query msserver
sc запрос TrustedInstaller
sc остановить msserver
sc остановить TrustedInstaller
sc config msserver start = отключено
sc config Запуск TrustedInstaller = отключен
icacls "%WINDIR%\WinSxS" /save "%WINDIR%\WinSxS.acl" /t
взять /f "%WINDIR%\WinSxS" /r
icacls "%WINDIR%\WinSxS" /grant "%USERDOMAIN%\%USERNAME%":(F) /t
компактный /s:"%WINDIR%\WinSxS" /c /a /i *
icacls "%WINDIR%\WinSxS" /setowner "NT SERVICE\TrustedInstaller" /t
icacls "%WINDIR%" /restore "%WINDIR%\WinSxS.acl"
del "%WINDIR%\WinSxS.acl"
sc config msserver start=требование
sc config TrustedInstaller start = запрос
sc запустить msserver
sc запустить TrustedInstaller
 

Примечания / советы:

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

  2. Я выполнил эти шаги при установке различных операционных систем дома и на работе: Win7x64, Win10x64, Windows Server 2008R2 и Windows Server 2012, и до сих пор не видел никаких проблем.

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

Надеюсь, будет полезно иметь один простой oneliner, так как в противном случае отличный ответ Джеффа Этвуда пропускает переключатель / ResetBase .

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

 dism.