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

1 ответ(ов) в теме
Форум
не в сети 1 год
На сайте с
Участник
0
18:18

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

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

Самым естественным способ уменьшить размер папки WinSxS в Windows 8 могла бы быть возможность удаления из системы старых версий компонентов, однако инструмента для этих целей Microsoft пока не предоставила.

Форум

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

du -v c:windowswinSXS

Форум

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

Сжимаем содержимое папки WinSxS в Windows 8

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

-Откройте командную строку с правами администратора
-Остановите и отключите службы Windows Installer и Windows Module Installer
sc stop msiserver<br> <br>sc stop TrustedInstaller<br> <br>sc config msiserver start= disabled<br> <br>sc config TrustedInstaller start= disabled

-Создадим резервную копию списков доступа (ACL) назначенных на файлы и папки в каталоге WinSxS (в дальнейшем этот бэкап понадобиться для восстановления оригинальных ACL)
icacls "%WINDIR%WinSxS" /save "%WINDIR%WinSxS_NTFS.acl" /t

Форум

-Назначим себя владельцем папки WinSxS и всех вложенных каталогов
takeown /f "%WINDIR%WinSxS" /r

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

Форум

-Восстановим владельца каталога WinSxS на TrustedInstaller
icacls "%WINDIR%WinSxS" /setowner "NT SERVICETrustedInstaller" /t

-Восстановим оригинальные списки доступа ACL на каталог WinSxS
icacls "%WINDIR%" /restore "%WINDIR%WinSxS_NTFS.acl"

Форум

-Восстановим тип запуска служб Windows Installer и Windows Module Installer
sc config msiserver start= demand<br> <br>sc config TrustedInstaller start= demand

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

Форум

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

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

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

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

источник

Редакции сообщения
0
Вы не имеете права на публикацию сообщений в этой теме