![]() |
Удаление сразу ВСЕХ апдейтов.
Здравствуйте.
Приспичило снести все апдейты на виртуальной 7. Нашёл только такой способ http://www.cyberforum.ru/post7455021.html . Но он медленный, поскольку удаляет всё последовательно. Может вам известен более быстрый вариант? Например загрузится с DVD и за несколько секунд снести всё через командную строку ? P.S. Понадобилось, чтоб удалить непубличные обновления из пакета Simplix. Поскольку не знаю, что лишнее, удалю всё. |
Итог эксперимента.
Батник не смог удалить 5 апдейтов , хотя удаляет через строку от имени администратора. wusa.exe /uninstall /HotFixID /quiet /norestart wusa.exe /uninstall /KB:2533552 /quiet /norestart wusa.exe /uninstall /KB:2884256 /quiet /norestart wusa.exe /uninstall /KB:3020369 /quiet /norestart wusa.exe /uninstall /KB:3020370 /quiet /norestart wusa.exe /uninstall /KB:976902 /quiet /norestart Но и вручную не могу. Может чего не хватает. В меню не появляется кнопка "удалить". ![]() |
sputnikk, быстрее будет установить ОС с нуля.
|
Цитата:
|
Blast, Пакет simplix - не дистрибутив http://forum.oszone.net/thread-257198.html
Продолжение. Есть и отрицательная сторона удаления с помощью батника. Вин 7 больше не может найти обновления, только загружает проц на 50% процессом svchost.exe, при 0% активности диска. Автофикс и переустановка центра обновления не помогли. Может особенность VirtualBox. Так было на новейших 4.3.30 и 5.0.0. Поэтому вернулся на 4.3.28. На ней обновление снова заработало, пока не удалил почти все апдейты. |
Ясно, любите шорох орехов? :)
|
Цитата:
|
http://anekdot.me/wiki/3590
|
Да, развлекаюсь войной с глюками. Наверно в прошлой жизни был сисадмином )
Вопрос остаётся открытым. Как ещё можно удалить все апдейты сразу без переустановки ОС? |
Быстро - никак. Только откат на точку до их установки.
Для облегчения процесса удаления обновлений, можете формировать список установленных самостоятельно, не полагаясь на сторонние батники. И делать свой командный файл для их удаления. Формирование списка обновлений: Код:
wmic qfe get hotfixid | findstr KB >> %userprofile%\desktop\updates.txt Код:
for /f %i in ('type %userprofile%\desktop\updates.txt') do echo wusa /uninstall /kb:%i /quiet /norestart >> %userprofile%\desktop\updates_uninstall.cmd А если хотите сделать правильно, возьмите нормальный чистый дистрибутив, установите на него обновления из WU, которые придут для вашей системы, а потом интегрируйте их на случай переустановок. Все равно игрища с пакетами до добра не доведут, рано или поздно :) |
Спасибо.
|
Небольшое уточнение. wmic qfe get hotfixid вернет список установленных обновлений, но у каждого из них номер будет указан с KB, то есть вот так:
KB958488 KB976902 KB982018 ... Если его просто через wusa /uninstall /kb:%i /quiet ... направить в выходной файл, то команды работать не будут - в ключе /kb: должен быть номер без начальных KB. Вот такой пакетный файл сформирует правильно: для удаления всех установленных обновлений
@echo off
set UNINSTALL_CMD="%USERPROFILE%\Desktop\updates_uninstall.cmd" echo @echo off>%UNINSTALL_CMD% setlocal EnableDelayedExpansion for /f "usebackq" %%I in (`wmic qfe get hotfixid ^| findstr KB`) do ( set KB=%%I set NUM=!KB:KB=! echo echo Uninstalling %%I...>>%UNINSTALL_CMD% echo start /w wusa.exe /uninstall /quiet /norestart /kb:!NUM!>>%UNINSTALL_CMD% ) echo pause>>%UNINSTALL_CMD% также вместо формирования пакетного файла для удалений можно просто сразу эти обновления удалять, для этого нужно в строках 9 и 10 убрать первое слово echo, а 3-ю и последние строки можно удалить или закоментарить. |
Да, спасибо, я не учел наличие KB в списке.
Добавлено: Можно еще в PS: Код:
Get-WmiObject -query 'select * from win32_quickfixengineering' | foreach {$_.hotfixid} | % {$_ -replace "KB", ""} | Set-Content "$Env:userprofile\Desktop\updates.txt" |
Цитата:
А вот с 2533552; 2884256; 3020369; 3020370; 3161102 (и подобными им) другая проблема. Они почему-то числятся как "легитимные", потому их невозможно удалить ни соответствующей кнопкой в Центре Обновлений, ни через BAT-скрипт. К тому же, на самом деле часть из них - вредоносные. В частности это касается 3020370 и 3161102. Но дать право на их удаление возможно. Но придется помучаться. Все установленные обновления Windows хранятся в пути C:\Windows\servicing\Packages. К каждому установленному обновлению относятся определенные файлы, в имени которых фигурирует KB-номер. Как правило, количество таких файлов колебается от 4 до 6 для каждого обновления, (у 976932 таких файлов 5). Например, у обновления 3020370 6 файлов: Package_1_for_KB3020370~31bf3856ad364e35~x86~~6.1.1.17514.cat Package_1_for_KB3020370~31bf3856ad364e35~x86~~6.1.1.17514.mum Package_for_KB3020370~31bf3856ad364e35~x86~~6.1.1.17514.mum Package_for_KB3020370_RTM~31bf3856ad364e35~x86~~6.1.1.17514.cat Package_for_KB3020370_RTM~31bf3856ad364e35~x86~~6.1.1.17514.mum Package_for_KB3020370~31bf3856ad364e35~x86~~6.1.1.17514.cat Эти файлы в свойствах должны иметь только одного владельца для удаления. В данном случае, тебя. После чего к этим файлам нужно сделать полный доступ к чтению, удалению и т. д. Все это делается во вкладке "Безопасность". Как только все файлы одного обновления пройдут процесс получения полного доступа к ним, при перезагрузке Центра Обновлений кнопка "Удалить" появится при выборе обновления, в данном случае, 3020370. Более того, теперь его можно удалить через BAT-скрипт. То же самое надо сделать с другими обновлениями. Да, это тяжко, но иначе никак. Хотя, программка Take Ownership немножко упростит это дело. Она даст возможность удалить эти файлы хотя бы вручную. В ней мы выбираем путь C:\Windows\servicing\Packages, и запускаем активацию прав доступа. Ждем, когда процесс закончится. А потом спокойно вручную удаляем файлы. Поскольку программа не дает полного доступа, кнопка "Удалить" в Центре Обновлений не появится. Скорее всего, в этом случае, через BAT-скрипт удаление тоже не пройдет (лично не пробовал). Как-то вот так вот. |
Цитата:
|
Цитата:
Кстати, нашел альтернативу, как отобразить кнопку "Удалить". Такие "критические" обновления изначально делаются перманентными, чтобы их нельзя было удалить штатно. Но есть решение сделать их удаляемыми по ссылке: https://borncity.com/win/2016/10/21/...ion-erzwingen/ Это в дополнение к тому, что я в предыдущем посте накатал. |
Время: 17:15. |
Время: 17:15.
© OSzone.net 2001-