Содержание
Введение
8 октября 2013 года вышло необязательное обновление KB2852386 только для всех изданий Windows 7 SP1, прошедших проверку подлинности. Оно добавляет долгожданную функцию в утилиту «Очистка диска».
Советы перед очисткой
- Я думаю, что вы захотите узнать, сколько места сэкономила очистка. Поэтому сейчас откройте свойства диска (а не папки winsxs) и запишите объем свободного пространства (в байтах) или просто сделайте скриншот.
- Не исключаю, что вас заинтересует автоматизация очистки папки WinSxS по расписанию. Чуть ниже в статье есть небольшой раздел об этом, и его стоит прочесть до выполнения пошаговых инструкций.
Инструкции
Они предельно просты:
1. Установите обновление KB2852386 посредством Windows Update (рекомендую) или скачайте в IE пакет из статьи базы знаний.
2. Выполните cleanmgr в командной строке, запущенной от имени администратора (так будет быстрее).
3. Найдите в списке опцию «Очистка обновлений Windows».
Примечание. Пункт очистки обновлений доступен только в том случае, когда есть файлы, которые можно удалить.
4. Нажмите ОК и наберитесь терпения, потому что операция займет некоторое время.
По окончании очистки перезагрузитесь и посмотрите в свойствах диска, сколько места освободилось.
Как работает очистка папки WinSxS в Windows 7
Реализация
Обновление KB2852386 заменяет всего один файл — Scavengeui.dll, в котором реализована вся работа по очистке. Фактически, в утилиту «Очистка диска» добавили вызов функции DISM, доступной в более новых ОС при использовании в утилите DISM.exe параметра /StartComponentCleanup (но не дополнительного ключа /ResetBase).
Так, при каждом запуске утилиты «Очистка диска» в папку %LocalAppData%\Temp\{GUID} зачем-то копируется содержимое папки %WinDir%\System32\DISM (причем временная папка не удаляется после завершения операции). После чего с помощью обновленной DLL осуществляется программный вызов функции глубокой очистки непосредственно из утилиты. Впрочем, копирование папки DISM наблюдалось еще до выхода KB2852386.
Неясности
Есть основания полагать, что алгоритм очистки в Windows 7 не совсем такой же, как в Windows 8 и выше с ключом /StartComponentCleanup. В частности, у меня и у читателей пока не выявилось сжатия файлов, несмотря на идентичность текстового описания в утилите cleanmgr. Проверьте у себя и напишите в комментариях!
Еще один непонятный нюанс — это загадочная фраза в статье базы знаний (перевод – мой):
Therefore, after you run the Disk Cleanup wizard, you may be unable to roll back to a superseded update.
После очистки диска у вас может не быть возможности откатиться к обновлению, замененному более свежим.
И нигде не объясняется, от чего зависит эта возможность :) В моем эксперименте у всех обновлений возможность удаления сохранилась, как и должно быть при использовании ключа /StartComponentCleanup в Windows 8 и новее. Возможно, со временем конкретика и появится…
Наконец, не совсем понятно, что мешало реализовать это раньше, и почему обновление появилось именно сейчас. Кстати, перенос очистки в утилиту DISM.exe Windows 7 пока не планируется, что не позволяет обрабатывать автономные образы. Возможно, такой перенос вскрывает целый пласт вопросов поддержки, связанных с обслуживанием образов.
Как автоматизировать очистку папки WinSxS
В Windows 8 очистка возложена на отдельное запланированное задание, а в крайнем случае можно воспользоваться утилитой командной строки DISM.exe.
В Windows 7 единственный доступный пока способ заключается в создании настроенной конфигурации утилиты «Очистка диска» и добавления полученной команды в планировщик.
Поскольку после ручной очистки нужного пункта в утилите не будет вплоть до установки следующей порции обновлений, я рекомендую создать конфигурацию сразу.
Поделиться с друзьями
Комментариев нет.
Для того, чтобы оставить свой комментарий вам необходимо войти или зарегистрироваться на сайте.