Windows 7 по-прежнему остается популярной операционной системой в корпоративной среде, несмотря на то, что уже вышли две новые версии клиентских ОС. Расширенная поддержка «семёрки» закончится лишь 14 января 2020 г., а это значит, что ближайшие 4 года для нее будут выходить обновления, исправляющие обнаруженные уязвимости.
Существует правило – если есть обновления, то есть и проблемы с их установкой. Давайте разберем, какие основные проблемы возникают при обновлении Windows 7 через Windows Server Update Services (WSUS) и как их исправить с наименьшими затратами.
Ошибка #1. Failed to find updates with error code 80244010
Эту ошибку вы практически гарантированно будете наблюдать на любой системе, впервые обратившейся к серверу WSUS. В WindowsUpdate. log также встретится предупреждение:
WARNING: Exceeded max server round trips
Причина проблемы в том, что список обновлений стал слишком большим, и клиент не может принять его за один заход. Подробности — blogs. technet. microsoft. com/sus/2008/09/18/wsus-clients-fail-with-warning-syncserverupdatesinternal-failed-0x80244010
Какое решение предлагает Microsoft? Если после ошибки запустить повторный поиск обновлений, то процесс загрузки метаданных продолжится с момента возникновения ошибки. Терпение господа, терпение. Три, пять попыток wuauclt /detectnow – и все образуется. Не забудьте при повторном поиске дождаться окончания предыдущего цикла поиска, иначе магия не сработает!
Ошибка #2. Не устанавливаются обновления Windows с ошибкой 0x80070308
Встречается эпизодически, и в одном случае из 100 у нее есть единственное и очень специфическое решение — удалить ключ
HKLM\Components\PendingRequired=1
Перезагрузиться. Здесь важно не переусердствовать, не следует удалять никакие другие ключи в этом разделе, даже если они вам очень не нравятся, потому что после этого обновления прекратят ставиться навсегда.
Ошибка #3. Все другие ошибки
Проблема заключается в том, что во время установки обновлений в системе могут появиться битые файлы. Что является причиной — неисправная сеть, диск, оперативная память, сам Windows Update – выяснить не получится, а исправить ошибки для установки последующих обновлений придется.
Как правило, повреждаются *.cat, *.mum, *.manifest файлы. У кого-то повреждаются *.dll, но я на практике не сталкивался. И вроде бы средство SURT должно само исправить ошибки, поскольку внутри него есть огромный каталог эталонных файлов. Только в последний раз SURT обновлялся в октябре 2014 года, а исправлений на операционную систему с тех пор вышло бесчисленное множество, и многих файлов в каталоге не хватает.
Ниже я опишу последовательность действий, необходимых для исправления ошибок установки обновлений на Windows 7 x64 с использованием SURT. Для редакции x86 просто потребуется другой пакет SURT из KB947821.
Последовательность действий будет следующая.
1. Запустить первый проход Windows6.1-KB947821-v34-x64.msu
Пользователя от работы отвлекать не потребуется, все сделаем удаленно. Создаем следующий командный файл и запускаем его:
где BUHWKS02 – целевая машина.
Когда скрипт отработает и встанет на паузу, проверяем %windir%\Logs\CBS\CheckSUR. log
Если ошибок не найдено – дело не в битых обновлениях.
Если он заканчивается
то будем исправлять.
2. Копируем эталонные файлы на целевую машину
Microsoft предлагает нам длинную, путанную процедуру с извлечением хороших файлов из обновлений и размещением их в определенные каталоги средства SURT. При этом пути в статьях неверные. Где-то и вовсе рекомендуют подкладывать оригинальные msu файлы.
Самый простой и правильный вариант следующий — скопировать эталонные файлы с рабочей системы:
*.mum and *.cat из C:\Windows\servicing\Packages складываются в %windir%\Temp\CheckSUR\servicing\packages
*.manifest из C:\Windows\winsxs\Manifests складываются в %windir%\Temp\CheckSUR\winsxs\manifests\
Проблема в том, что битых файлов обычно десятки, и их очень сложно выбрать и скопировать. Тогда на помощь приходит следующий скрипт PowerShell (эталонной считается машина, с которой вы запускаете скрипт)
Как видите, скрипт прост и может быть легко заточен напильником под вашу инфраструктуру.
3. Запускаем второй проход Windows6.1-KB947821-v34-x64.msu
Ошибка #4. Если SURT отработал нормально, а обновления все равно не ставятся
Попробуйте прибегнуть к старому приему – сбросить службу Windows Update в исходное состояние. Для этого необходимо удалить каталог %windir%\SoftwareDistribution.
Ошибка #5
Клиент исчезает из консоли WSUS. Любопытная ошибка, связанная с неправильным клонированием машин и задвоением (затроением и т. д.) идентификаторов клиентов. Решается так:
Ошибка #6
Ошибка связана с нехваткой ресурсов в AppPool WSUS. Решение — снять лимит на потребляемую память. Как это сделать — статья.
Коротко: Открываем IIS, Application Pools, WsusPool, Advanced Settings.
Параметр Private Memory Limit устанавливаем в 0.
Продолжение темы настройки WSUS — в моей следующей статье: https://habrahabr. ru/post/329440/
PS:
Многие ошибки решены в новом клиенте WSUS:
1. KB3125574 «Windows 7 post SP1 Convenience Rollup Update». Внимательно ознакомьтесь с разделом Known issues!
Предварительно необходимо установить KB3020369 «April 2015 servicing stack update for Windows 7 and Windows Server 2008 R2».
Microsoft WMI – Invalid Class Error [0x80041010]
You can receive error 0x80041010 from multiple applications that call WMI. For my example it was received in SCCM while patches were being applied.
No matter where you got the error the underlying issue is probably with WMI. Here is how to check!
Confirm WMI is Broken:
Right click WMI Control (Local) and click Properties
If WMI is working properly then it will show that Good Properties. If you see Invalid class then your WMI is not working correctly.
Troubleshooting:
The first step is to download the Microsoft WMIDiag Tool. It will analyze WMI and give you a report with any issues it finds.
Here is what the script looks like while it runs:
Resolve MOF Registration Errors:
Here is what the command looks like while it runs:
Once finished check WMIMGMT. MSC to see if it is populating the Properties correctly.
Share this, be sociable!!
Related
37 thoughts on “Microsoft WMI – Invalid Class Error [0x80041010]”
Thank you for the detailed instructions! This fixed my issue right away.
Thanks for the article, have helped to solve the problem!
thanks… resolve mi issue
Thanks for your help!
Gret, it helped! Thank you!
Thanks so much from a Windows admin noob. 80% of what I do is Linux or UNIX admin, but when things like this happen, people like me appreciate pages like this SO MUCH!
Thank you very much. The About solution worked Perfectly.
It worked, thank you so much.
Luckily I landed on this page. The detailed instructions here resolved my problem. Thanks man.
Saved me from a world of pain with this – THANK YOU
I have a customer with our software on their Win 8 PC. Was getting this same error message. I googled it and came upon this site. I followed these instructions and it worked perfectly. THANK YOU.
Glad it worked! Thanks Chris!!
Thank you Daniel, this worked perfectly!
THANK YOU you solved my issue
Thank you so much and it resolved my issue quickly
Worked fine!! I love you mate!! ?
Thank you, that works like a charm for my! ?
Thanks a lot! It was helped to add new DC!
Thank you SO MUCH for the detailed instructions! This worked like a charm and was MUCH better than the ‘instructions’ provided by my company.
Thank you so much. Solved my problem.
Really thank you mate, so much! It fixed my problem.
Thanks for the blog, quickly fixed an SCCM install issue on Windows 10.
Thank you. You are amazing. Worked like a charm on 2012 Server.
Found an old Win7 w/o SP1 (which was working great) of an customer. But now upgrade to Win10 was not possible. But the solution worked Pretty fine. Thanks a lot!
Finally My issue has been resolved! Thanks a lot!
Finally My issue has been resolved! Thanks a lot!!
The “PROSet Monitoring” Service is the issue.
Thanks this fixed my issue with configuration manager remote control onto a remote computer, and that remote computer not reporting to SCCM.
That’s all well and good if you can boot into windows GUI, what if you can’t? I can’t get my brand new laptop with windows 10 to boot into the gui, I can use the command prompt to do some things. Seeing error code 0x80041010 after installing the iLok management software then Pro Tools 10 PACE iLok drivers… which prompted a restart and upon restarting the computer boot failure, blue screen of death. I’ve tried using command prompt to salvage and repair the winmgmt repository and repair the WMI doing the whole *MOFCOMP process. To no avail. I really don’t want to have to reinstall windows 10 on a brand new computer… I just bought an Acer Predator Helios 300 gaming laptop and was installing audio engineer softwares… this is why I liked using a WacBook pro for audio production, software installs were simpler and required far less restarts to finish and led to far less problems. Is there another way to repair the WMI functionality and or uninstall recently installed software from command prompt?
Как восстановить или перестроить репозиторий WMI в Windows 10
Guide
Репозиторий доступен здесь –
% WINDIR% \ system32 \ Wbem \ Repository
Вкратце, он предоставляет конечным пользователям статус локальной или удаленной компьютерной системы.
Примечание . Не используйте это на компьютере с кластером Server 2012
Восстановить или перестроить репозиторий WMI в Windows
Существуют инструменты командной строки для исправления или восстановления хранилища WMI. Тем не менее, Microsoft предполагает, что лучше всего проверить, есть ли коррупция.
Ниже приведен список ошибок и проблем с разрешениями, которые вы можете увидеть:
Лучший способ проверить это – запустить эту команду в командной строке с повышенными правами.
Если в хранилище есть проблема, он ответит « хранилище не согласовано », если нет, то это что-то другое, что вызвало проблему. Теперь, когда вы уверены, что коррупция существует, давайте следуем этим советам, чтобы восстановить или перестроить репозиторий WMI.
1] Сбросить WMI Repository
Откройте командную строку с повышенными привилегиями.
Затем выполните команду, чтобы увидеть, вернется ли она как
Это поможет вам исправить хранилище WMI. Вот что означает каждая из команд WMI:
Надеюсь, что это объясняет, что происходит, когда вы выполняете команды.
2] Принудительное восстановление WMI
WMI поставляется со встроенным процессом самовосстановления. Когда служба WMI перезапускается или обнаруживает любое повреждение, процедура самовосстановления запускается автоматически. Это происходит двумя способами:
Автообновление : Здесь будут использоваться образы резервных копий, если включена резервная копия VSS (теневое копирование тома).
HKLM \ Software \ Microsoft \ WBEM \ CIMOM: автоматическое восстановление MOF
Примечание. Автоматическое восстановление MOF является ключевым моментом. Дважды щелкните по нему, чтобы проверить значение.
WMI Самовосстановление не работает
Если самовосстановление не работает, вы всегда можете воспользоваться процессом принудительного восстановления.
Проверьте значение regkey пусто или не здесь:
HKLM \ Software \ Microsoft \ WBEM \ CIMOM \ Авто-восстановление MOF
Если приведенный выше ключ пуст, скопируйте и вставьте значение ключа с другого компьютера. Убедитесь, что это из системы, которая эквивалентна рассматриваемому компьютеру.
Далее выполните команду
Если вы получили сообщение об ошибке «Сброс хранилища WMI не выполнен. Код ошибки: 0x8007041B. Facility: Win32 ”, затем остановите все Dependency Services в службе WMI, выполнив следующие команды:
Если оба предложенных исправления не работают, самое время попробовать автоматизированный инструмент.
3] WMI Fixer Tool
Этот инструмент исправит серверный WMI-репозиторий, если он поврежден или возникла связанная с ним проблема. Вы можете скачать WMI Fixer Tool от Technet.
Источники:https://habr. com/ru/post/278439/
https://www. virtuallyboring. com/microsoft-wmi-invalid-class-error-0x80041010/
https://techarks. ru/office/guide/kak-vosstanovit-ili-perestroit-repozitorij-wmi-v-windows-10/