Как убрать доступные обновления windows 7. Удалить обновления Windows

Любое обновление, особенно если оно затрагивает системные файлы - потенциальная угроза стабильности системы. Несмотря на то, что обновления тестируются как самой компанией Microsoft, так и администраторами самостоятельно, ситуации, когда установка обновления приводит к полной неработоспособности системы, время от времени случаются. Что делать в этом случае? Об этом мы расскажем в данной статье.

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

Отдельный разговор - нелицензионные системы. Чаще всего обход активации осуществляется патчем и заменой ядра. Это уже само по себе небезопасно и чревато потенциальными проблемами, а при обновлениях, затрагивающих ядро вы рискуете получить отказ системы, что уже не раз происходило. Также подвержены этому недостатку и различные любительские сборки, доступные в сети интернет, многие сборщики сразу включаю в систему патченное ядро или принудительно запускают активатор сразу после установки, не проверяя наличие и валидность ключа системы.

Так произошло и в минувший вторник патчей. Очередное обновление безопасности KB3045999 для Windows 7 при перезагрузке приводило к "синему экрану смерти" (BSOD).

Пользователи разразились очередными упреками к Microsoft, выпускающей "глючные" обновления, но очень скоро выяснилось, что ошибке подвержены только системы с патченным ядром. Тем не менее проблема затронула и вполне законопослушных пользователей, которые поленились собрать и, чтобы не выкачивать гигабайты обновлений, просто скачали из сети подходящую сборку.

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

Установочный диск или Windows PE

Это самый доступный, хотя и не самый простой способ. Подойдет любой диск от совместимой системы, единственное условие - соблюдение разрядности. Также следует помнить об обратной совместимости, т.е. для восстановления Windows 7 вы можете использовать диски не только от Windows 7 и Server 2008 R2, но и Windows 8 / Server 2012. В ряде случаев можно попробовать использовать диск от более ранней системы, но при этом не все возможности могут быть доступны, например, реализовать нижеприведенные инструкции с диском от Windows Vista / Server 2008 не получится.

Если вы используете Windows PE, то он также должен быть создан на базе текущей версии ОС или более поздней, разрядность также должна совпадать.

Загрузимся с установочного диска и на экране, предлагающем установку ОС выберем пункт Восстановление системы.

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

А вот дожидаться окончания работы мастера совершенно необязательно, тем более что помочь он нам не сможет, поэтому на следующем экране нажимаем Отмена .

Затем не спешим и в появившемся окне выбираем ссылку Показать дополнительные возможности восстановления системы .

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

Если вы загрузились с Windows PE, то попадете в командную строку сразу.

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

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

DISM /Image:D:\ /Get-Packages

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

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

Для удаления пакета выполните команду:

DISM /Image:D:\ /Remove-Package /PackageName:Package_for_KB3045999~31bf3856ad364e35~amd64~~6.1.1.1

где в качестве опции PackageName укажите имя пакета, полученное на предыдущем шаге.


Microsoft Diagnostics and Recovery Toolset

Набор инструментов диагностики и восстановления (Microsoft Diagnostics and Recovery Toolset, MSDaRT) - средство, основанное на ERD Commander от Sysinternals и доступное по подписке Software Assurance (SA), однако его несложно найти в сети. Для работы с Windows 7 потребуется MSDaRT не ниже версии 6.5, актуальной является версия 8.0

Загружаемся с диска MSDaRT, помните, что обязательным требованием является соблюдение разрядности, и на первом экране, после выбора языка (в нашем случае используется версия 8.0), выбираем Диагностика :


Затем Microsoft Diagnostics and Recovery Toolset :


После чего перед вами откроется окно с выбором доступных инструментов, нас интересует Hotfix Uninstall или Удаление исправлений .

Работа с мастером не представляет сложности, выбираем одно или несколько обновлений и удаляем их:

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

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

Название Удаление обязательных обновлений не до конца раскрывает смысл описываемого в статье, поскольку не совсем понятно, что именно имеется в вижу под термином "обязательный". Материал можно было бы озаглавить как Удаление неудаляемых обновлений , но тогда не совсем понятно, по каким причинам они вдруг стали неудаляемыми: по воле разработчика или из-за ошибок с хранилищем компонентов. Есть еще вариант обозначить как удаление обновлений, не предназначенных для удаления, но это как-то избыточно, что ли.
Совсем недавно открыл для себя одну любопытную особенность некоторых обновлений: они не удаляются стандартными средствами операционной системы. На практике возникла ситуация, в которой я никак не мог удалить из системы "битое" обновление. По мере углубления в тематику вопроса выяснилось, что в Windows существуют разные типы обновлений, и что частный случай невозможности удаления некоторых из них вовсе не является следствием какой-либо локальной ошибки, а отражает скорее особенность. Судя по всему, объясняется это архитектурными нюансами механизма обновлений. На практике сложно создать такую систему взаимосвязей обновлений, в которой каждое обновление будет полностью автономно, то есть независимо от остальных, и, соответственно, может быть удалено без каких-либо последствий. Но еще более важно то, что некоторые обновления для системы действительно критичны, поскольку достаточно глубоко в неё интегрированы. Например сам механизм обновления (стек обслуживания) обеспечивается набором модулей (инсталлятор, библиотеки и прч), которые необходимы для установки последующих обновлений и от которых зависит работоспособность механизма в целом. Соответственно, все обновления стека обслуживания, вносящие алгоритмические изменения, не могут быть просто удалены, поскольку тогда станут недоступными некоторые особенности этих алгоритмов, при помощи которых уже были установлены последующие пакеты обновлений. Удаление подобных обновлений чревато для системы серьезными последствиями, такими как разрушение хранилища компонентов, и как следствие, потенциальные проблемы с работоспособностью самой операционной системы. На самом деле так уж всё страшно, поскольку подобных обязательных (неудаляемых) обновлений, например в системе Windows 7, насчитывается всего-то около десятка:) Но знать то об этом нюансе все же стоит, так же как и иметь понимание, как именно производить удаление обязательных обновлений .

Проблема

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

тут всё тривиально. Но с обязательными обновлениями всё несколько сложнее, поскольку при аналогичных действиях мы не видим привычных элементов управления:

при попытке выполнить удаление данного компонента из командной строки при помощи утилиты wusa :

wusa /uninstall /kb:2522422

выдается ошибка: Обновление для Microsoft Windows является обязательным компонентом для этого компьютера, поэтому удаление невозможно.

В этом случае у специалиста возникает резонный вопрос: за что вы так со мной? :) Тот факт, что система считает некоторые обновления обязательными и не дает их удалять, вовсе не гарантирует, что эти обновления не могут повреждаться и являться причиной различного рода проблем. Поэтому, в некоторых случаях появляется необходимость удаления. Имеется ли возможность удалить подобные неудаляемые обновления из системы?

Решение

Изменения, описываемые в данном разделе, могут привести к неработоспособности хранилища компонентов!! Приводимые в разделе действия Вы выполняете на свой страх и риск!!

Поэтому действуйте крайне аккуратно, желательно сделав полный бэкап системы либо создав точку восстановления. Главное понимать, зачем Вы всё это делаете. Если Вам необходимо исправить последствия кривого обновления, то удалите обязательное обновление, а затем установите его вновь. При удачном раскладе после удаления/переустановки неудаляемого обновления Вам удастся исправить последствия кривого обновления, однако при худшем сценарии развития событий, Вы приведете систему в нерабочее состояние, поскольку обновление может оказаться ключевым. Итогом может стать повреждение хранилища компонентов с ошибкой STATUS_SXS_COMPONENT_STORE_CORRUPT .
На каком уровне обеспечивается неудаляемость подобных обязательных обновлений? На уровне параметров в конфигурационных .mum -файлах.

Mum -файл (Microsoft Update Manifest/Манифест обновления Майкрософт) - конфигурационный файл обновления Windows формата XML, содержащий параметры пакета: наименование, идентификатор, язык установки, зависимости, флаги действий и прочие. Используется в качестве идентификатора (символического имени) сервиса (стека) обслуживания с целью выполнения над пакетом операций включения/отключения/удаления посредством различных сервисных утилит (например, Диспетчера пакетов (pkgmgr)). Файл манифеста содержит в своем имени наименование обслуживаемого обновления и размещается в каталоге %WinDir%\servicing\Packages ;

Msu -файл (Microsoft System Update/Пакет обновления Майкрософт) - изолированный пакет Центра обновления Microsoft, содержащий в своем составе метаданные (описывающие каждой пакет обновления, содержащейся в.msu-файле), один или несколько.cab-файлов (каждый.cab-файл содержит модули отдельного обновления), .xml-файл (описывающий пакет обновления, используется Автономным установщиком обновлений Windows wusa.exe для выполнения процесса инсталляции обновления), файл свойств (файл содержит строки свойств, которые использует утилита wusa.exe .

В .mum -файле есть параметр с именем permanence , принимающий два значения: removable и permanent . Пакеты обновления, которые не желательно удалять из системы, разработчики Microsoft объявляют как "постоянный" (permanent), тогда как все остальные (обычные) пакеты обновления маркируются как "удаляемые" (removable). Поэтому, процесс изменения типа обновления с неудаляемого на удаляемое сводится к изменению данного параметра в соответствующем .mum -файле.

Общий алгоритм действий

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

  1. После инсталляции типового системного обновления соответствующие .mum -файлы размещаются внутри каталога %Windir%\servicing\Packages\ . Поэтому, открываем в C:\Windows\servicing\ , ставим курсор на подкаталог Packages .
  2. Зачастую наблюдается проблема с доступом к объектам в директории %Windir%\servicing\Packages\ , поскольку разрешения на полный доступ выставляются только для системной учетной записи TrustedInstaller . Поэтому, для внесения изменений в права доступа нажимаем на каталоге Packages правую кнопку мыши, выбираем пункт Свойства и затем переходим во вкладку Безопасность . В открывшемся окне сразу за разделом "Группы и пользователи" нажимаем кнопку Изменить, затем жмем Добавить, в открывшемся окне, в поле ввода пишем Все , жмем Проверить имена, выбираем из найденного, жмем OK , затем выставляем для вновь добавленной группы полные права. Закрываем окно, в основном окне Безопасность , в самом низу жмем кнопку Дополнительно, в открывшемся вновь окне, во вкладке "Разрешения" выделяем только что созданную группу (Все), жмем кнопку Изменить разрешения, далее в самом низу нового окна отмечаем чекбокс "Заменить все разрешения дочернего объекта на разрешения, наследуемые от этого объекта", везде нажимаем ОК, закрывая все окна.
  3. Заходим в директорию Packages , ищем в ней .mum -файл(ы), относящиеся к удаляемому обновлению. Обычно они имеют имя, содержащее в себе полное название искомого пакета:

  4. Открываем найденный файл на редактирование:

  5. Ищем строку, содержащую слово permanence , заменяя значение параметра на permanence="removable" . В приведенном выше примере это строка под номером 4 . Далее закрываем файл с сохранением произведенных изменений.
  6. Производим подобные действия для всех .mum -файлов, ассоциированных с требуемым неудаляемым пакетом обновления, поскольку с некоторыми обновлениями могут быть ассоциированы два и более.mum-файлов.
  7. После окончания процесса правки закрываем все окна, относящиеся к обновлениям. В некоторых случаях изменения вступают в силу мгновенно, то есть обновление станет доступным для удаления сразу после открытия и переиндексации в разделе

Не секрет, что со временем любая Windows система старается отхватить себе как можно больше места на вашем жестком диске. И аппетиты её только растут от версии к версии. Если периодически не давать ей по рукам (или что там у Windows вместо рук), подчищая TEMP каталоги с временными файлами, о которых у самой системы видимо нет времени заботится, а также ставить все обновления без разбора, то Windows сперва захватит ваш винчестер, а потом примется за вас. Шутка.

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

И вот наконец Microsoft предоставила нам в очередном обновлении KB2852386 инструмент, позволяющий удалять устаревшие обновления. Оно не является обязательным и добавляет новый параметр стандартному мастеру очистки диска Windows 7. Следует заметить, что в Windows 8/8.1 аналогичный мастер очистки устаревших обновлений (Windows Update Cleanup) присутствует с самого начала.

Обновление KB2852386 можно установить через службу Windows Update или скачать вручную с сайта Microsoft (http://support.microsoft.com/kb/2852386).

Однако есть некоторые нюансы. Дело в том, что установить данное исправление получится только на Windows 7 SP1 и в процессе установки запустится проверка подлинности Windows.

Удаление устаревших обновлений Windows 7, очистка WinSxS

Cleanmgr

В открывшемся окне указываем диск, на котором установлена Windows и нажимаем кнопку «Очистить системные файлы» (Clean up system files).

Запустится сканирование системы, после чего в списке появится новая опция «Очистка обновлений Windows», недоступная при первом запуске. Дальше, полагаю, сами догадываетесь что делать.

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

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

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

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

Как удалить обновления в Windows XP

Так же существует другой способ удаления обновлений в Windows XP.

Для этого заходим в папку Windows на системном диске и ищем там папки с названием синего цвета, что-то типа такого:


Как видите, их название начинается со знака $ . Внутри находится папка spuninst , внутри которой находится файл spuninst.exe , который и нужно запустить для удаления обновления.

Как удалить обновления в Windows 7

Пуск -> Панель управления -> выбираем тип Просмотра по Категориям и выбираем Система и безопасность :


Просмотр установленных обновлений


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

Как удалить обновления в Windows 8

В "восьмерке" всё практически то же самое, что и в "семерке". Я покажу как это сделать лишь если выбран Просмотр по Крупным значкам :




Так же удалить обновления можно и через . Этот способ НЕ работает в Windows XP.

Запускаем и вводим команду:

wusa.exe /uninstall /kb:100500


где 100500 - это номер удаляемого обновления. Разумеется Вам нужно его знать, а так же желательно запустить командную строку от имени администратора.

Закончили с информацией про удаление всех удалений. Теперь заострим внимание на то, если нужно удалить ненужные обновления. Да да, есть и такие. Дело в том, что если "винда" у Вас установлена давно, то она содержит кучу не нужных обновлений. Рассмотрим на примере.
Предположим что системе уже около 3х лет. Все обновления качаются и устанавливаются исправно. Но вслед за одним обновлением, выпускаются всё новые и новые, которые часто "перекрывают" старые обновления своими "заплатками". А что делается со старыми, которые уже скачались и их 10 раз "перекрыли"? Да в системе они лежат, а если конкретнее, то на системном разделе диска, место которого всегда не хватает.

Про это я писал год назад в статье . В Windows XP её нет. Можете более подробно ознакомится со статьей.

В дополнение к той статье, хочу дать одну рекомендацию по очистке не нужных обновлений (в Той статье этого нет).

Итак, заходим в Мой компьютер и щелкаем по системному разделу (это там, где установлена винда. Ещё там бывает значок специальный и часто это диск С ) правой кнопкой мыши. В контекстном меню выбираем Свойства .


Начнется процедура сбора информации. Нужно ждать. Сколько времени? Зависит от загруженности системы. Иногда хватает и минуты, а иногда и десять:


После того, как дождались и система просканировала все файлы, которые можно очищать без потери функциональности, нужно пролистать список вниз в поисках пункта «Очистка обновлений Windows» и поставить на нём галочку. Можете попутно ещё какую-нибудь галочку поставить (например Файлы дампы памяти и Debug Dump Files ), благо описание на всех присутствует (читаем и думаем нужно ли Вам это). Затем жмем ОК:


Если после того, как Вы выбрали Очистку диска и у Вас не появился пункт с обновлениями винды для удаления, тогда жмите на «Очистить системные файлы»


и в следующем окошке ищите, ставите и удаляете:

Где хранятся обновления Windows

Разумеется в Windows обновления где-то должны хранится. Для всех версий (Windows XP, 7, 8) папка для хранения обновлений одинаковая. Она находится по пути:

Системный диск -> Windows -> SoftwareDistribution -> Download


Вот здесь и находятся все папки и файлы обновлений:


Для чего это всё нужно? Нет, не для удаления. Удалять отсюда неправильно! Это больше для общей информации, а так же чтобы можно было создать резервную копию этой папки.
Например Вы сохраняете всё отсюда, затем переустановили Windows или же пошли к другу с новой ОС или же ошибка какая произошла - в общем ситуаций может быть много. Вы просто скопируете сохраненные обновления и их не нужно будет искать или устанавливать. Короче Вы поняли к чему я клоню.
Следует понимать, что не все обновления с этой резервной копии могут подходить другой системе. С семерки на восьмерку разумеется не подойдет, а так же учитывать нужно .

Так же, если в папках или файлах обновления будет название express , то нужно знать, что такие обновления не переустаналиваются.

На этом у меня всё. Теперь Вы знаете как можно удалить все обновления Windows, а так же где они находятся, как их отключить и создать резервную копию.

Понравилась статья? Поделиться с друзьями: