Як очистити системний диск, видаливши застарілі поновлення в Windows 7 SP1

У жовтні Microsoft випустила ряд оновлень для користувачів своїх продуктів, деякі з них привели до сумних наслідків, але є одне оновлення, поява якого вже дуже довгий час чекали всі шанувальники Windows 7. Мова йде про оновлення KB2852386 (Http://support.microsoft.com/kb/2852386), що дозволяє видаляти застарілі поновлення (поновлення, які були замінені на більш нові оновлень) за допомогою нового параметра стандартного майстра очищення диска Windows 7 - Windows Cleanup Tool (cleanmgr.exe). Це оновлення не є обов'язковим, його можна встановити через службу Windows Update або, скачавши вручну з сайту Microsoft.

Нагадаємо, що в Windows 7 при установці будь-якого системного оновлення, системні файли замінюються новими, а їх старі версії зберігаються в каталозі WinSxS (C: \ Windows \ WinSxS). Завдяки такому підходу в будь-який момент можна безпечно видалити будь-системне оновлення. Однак, цей підхід призводить до того, що з часом у міру установки нових оновлень, каталог WinSxS істотно збільшується в розмірах (виходить, що чим більше вік системи і чим більша кількість оновлень встановлено - тим більше розмір папки WinSxS), що не може не хвилювати користувачів, особливо щасливих володарів SSD дисків і дисків з невеликим розміром системного розділу. Раніше в Windows 7 була відсутня штатна утиліта видалення файлів застарілих оновлення, тому щоб зменшити розмір папки WinSxS доводилося вдаватися до різних трюків.

Порада. На сторінках сайту ми вже на раз торкалися проблеми папки WinSxS в Windows, тому попередньо рекомендуємо познайомитися зі статтями: Безпечне очищення WinSxS в Windows Server 2012 і Зменшуємо розмір папки WinSxS в Windows 8.Примітка. У Windows 7/2008 можна було видалити невикористовувані файли, які залишилися після установки SP1. Зробити це можна було за допомогою наступної команди улюбленої нами утиліти DISM:

dism / online / cleanup-image / spsuperseded

Природно, що після виконання даної команди відкотити установку Windows 7 SP 1 стане неможливо.

Тепер завдяки оновленій версії майстра очищення Windows 7 можна видалити застарілі поновлення Windows, що дозволить істотно зменшити розмір папки WinSxS.

Вимоги до установки оновлення KB2852386

  1. Оновлення призначене тільки для Windows 7 SP 1
  2. Якщо ви завантажуєте оновлення самостійно з сайту Microsoft (посилання є на початку статті), вас попросять запустити утиліту перевірки автентичності Windows (Genuine Windows Validation). Якщо Ви встановлюєте оновлення через центр установки оновлень, ручну валідацію виконувати не доведеться.

Як в Windows 7 очистити папку WinSxS, видаливши застарілі поновлення

  1. Скачайте і встановіть оновлення KB 2852386
  2. Запустіть майстер очищення диска (Cleanup Manager), набравши в командному рядку з правами адміністратора:
    cleanmgr
  3. Вкажіть диск, на якому встановлена ​​Windows 7 (зазвичай це C: \)
  4. Натисніть кнопку "Clean up system files»(Очистити системні файли)
  5. Після цього запуститься сканування системи (Scanning: Windows Update Cleanup) І в списку з'явиться ряд опцій очищення системи, які при першому запуску були недоступні.
  6. У вікні відзначте опцію Windows Update Cleanup (Очищення оновлень Windows). Утиліта покаже приблизний розмір місця, що вивільняється після видалення застарілих оновлень. У нашому прикладі, на системному звільниться близько 4 Гб.Примітка. Опція очищення оновлень Windows доступний тільки в тому випадку, якщо майстер очищення диска виявляє оновлення Windows 7, які більш не потрібні і можуть бути видалені.

  7. Натисніть Ок, після чого система приступить до видалення зайвих файлів (зазвичай процес займає досить тривалий час).
  8. Після закінчення процедури очищення, перезавантажте систему. При завантаженні системи може з'явитися вікно з приреченням "Cleaning up" - Не вимикайте свій комп'ютер ...
Примітка. Важливо розуміти, що після виконання очищення диска за допомогою даного майстра, буде неможливо скасувати установку оновлень, які замінили віддалені апдейти,

Як автоматизувати очищення папки WinSxS

У тому випадку, якщо необхідно провести видалення невикористовуваних оновлень Windows 7 відразу на безлічі машин (не бігати ж по всім і не виконувати всі ці операції вручну!), Вдамося до простої автоматизації.

Для цього нам потрібно внести певні зміни в реєстр і за розкладом запускати команду очищення.

До реєстру потрібно додати параметр типу DWORD з ім'ям StateFlags0011 (По суті дві останні цифри можуть бути будь-якими в діапазоні від 0 до 65535, головне запам'ятати їх, тому що надалі ми будемо їх використовувати) і значенням 2 в гілку реєстру

HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ Explorer \ Update Cleanup

Порада. Вказана зміна в реєстр можна внести, наприклад, за допомогою групових політик (логон скрипт, GPP тощо).

Залишилося будь-яким засобом автоматизації (напрміер, за допомогою планувальника завдань schtasks, at, SCCM або logon скрипта) виконати команду:

cleanmgr / sagerun: 11

Зазначена команда запустить автоматичне видалення застарілих оновлень Windows 7 і видалить невживані файли з каталогу WinSxS

Порада. Логічно було б запускати дане оновлення 1 раз на місяць, наприклад кожного першого понеділка місяця, тобто перед черговим Patch Tuesday.

А як же Windows 8?

У Windows 8 і 8.1 майстер очищення застарілих оновлень (Windows Update Cleanup) є штатною фичей.