Computer >> कंप्यूटर >  >> प्रणाली >> Windows Server

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

प्रत्येक अनुभवी Windows व्यवस्थापक को WMI सेवा (Windows Management Instrumentation) और उसके घटकों के साथ कुछ समस्याओं का सामना करना पड़ा है। विंडोज के सामान्य संचालन के लिए WMI सबसिस्टम में समस्याएं महत्वपूर्ण हैं, इसलिए व्यवस्थापक को जल्द से जल्द WMI की कार्यक्षमता को जांचने और पुनर्स्थापित करने की आवश्यकता है। इस लेख में हम विंडोज 10 और विंडोज सर्वर 2016/2019 पर WMI समस्याओं के निवारण और उन्हें ठीक करने की काफी सरल तकनीक का वर्णन करेंगे।

WMI के साथ एक समस्या कई प्रकार की त्रुटियों का संकेत दे सकती है:

  • सिस्टम और एप्लिकेशन लॉग में संसाधित होने वाली WMI क्वेरी में त्रुटियां (0x80041002 - WBEM_E_NOT_FOUND , WMI: Not Found , 0x80041010 WBEM_E_INVALID_CLASS );
  • WMI से संबंधित GPO प्रसंस्करण त्रुटियां (समूह नीतियों के WMI-फ़िल्टर का गलत कार्य, आदि);
  • WMI क्वेरीज़ बहुत धीमी हैं;
  • SCCM/SCOM एजेंटों की स्थापना या संचालन के दौरान त्रुटियां;
  • स्क्रिप्ट में त्रुटियां (VBS या PowerShell) जो WMI नेमस्पेस (Get-WmiObject वाली स्क्रिप्ट, आदि) का उपयोग करती हैं

WMI समस्याओं का निवारण

पहला कदम विंडोज मैनेजमेंट इंस्ट्रुमेंटेशन की जांच करना है (Winmgmt ) सेवा विंडोज़ पर स्थापित है और चल रही है। आप services.msc . में सेवा की स्थिति की जांच कर सकते हैं कंसोल या पॉवरशेल का उपयोग करना:

Get-Service Winmgmt | Select DisplayName,Status,ServiceName का चयन करें

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

यदि Winmgmt सेवा चल रही है, तो आप WMI के स्वास्थ्य की जांच एक साधारण WMI कमांड से कर सकते हैं। आप कमांड प्रॉम्प्ट से या पावरशेल से wmi अनुरोध निष्पादित कर सकते हैं। उदाहरण के लिए, निम्न आदेश विंडोज़ पर स्थापित प्रोग्रामों को सूचीबद्ध करेगा:

wmic product get name,version

WMI के माध्यम से विंडोज 10 के संस्करण और निर्माण के बारे में जानकारी प्राप्त करने के लिए सबसे सरल पावरशेल कमांड इस तरह दिख सकता है:

get-wmiobject Win32_OperatingSystem

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

जैसा कि आप देख सकते हैं, WMI सेवा ने अनुरोध का सही उत्तर दिया। यदि ऐसी WMI क्वेरी निष्पादित करते समय Windows कोई त्रुटि देता है, तो सबसे अधिक संभावना है कि WMI सेवा ठीक से काम नहीं कर रही है, WMI रिपॉजिटरी क्षतिग्रस्त है, या अन्य समस्याएं हैं।

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

मेरे मामले में, उदाहरण के लिए, कंप्यूटर प्रबंधन स्नैप-इन में WMI नियंत्रण गुण खोलते समय (compmgmt.msc ), निम्न संदेश दिखाई दिया:

Failed to initialize all required WMI classes
Win32_Processor. WMI: Invalid namespace
Win32_WMISetting. WMI: Invalid namespace
Win32_OperationSystem. WMI: Invalid namespace

पहले, आधिकारिक Microsoft टूल WMIDiag.vbs (Microsoft WMI डायग्नोसिस) का उपयोग WMI के निदान के लिए किया गया था। WMIdiag एक vbs स्क्रिप्ट है जो विभिन्न WMI सबसिस्टम की जांच करती है और एकत्रित जानकारी को लॉग फ़ाइलों में लिखती है (डिफ़ॉल्ट रूप से लॉग %TEMP% फ़ोल्डर में स्थित होते हैं - C:\USERS\%USERNAME%\APPDATA\LOCAL\TEMP\ ) परिणामी रिपोर्ट में WMIDIAG-V2.2 से शुरू होने वाले नामों वाली फ़ाइलें होती हैं और इसमें निम्न फ़ाइल प्रकार शामिल होते हैं:

  • LOG फ़ाइलों में WMIDiag टूल की गतिविधि और संचालन पर विस्तृत रिपोर्ट रिपोर्ट होती है;
  • TXT फ़ाइलों में पाई गई त्रुटियों की सारांश रिपोर्ट होती है जो ध्यान देने योग्य होती हैं;
  • CSV फ़ाइलों में WMI प्रदर्शन के दीर्घकालिक विश्लेषण के लिए आवश्यक जानकारी होती है।

<मजबूत> WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

टिप. विंडोज़ x64 संस्करणों में wmidiag निम्नानुसार चलाया जाना चाहिए:
c:\windows\System32\cscript.exe wmidiag.vbs
अन्यथा, एक त्रुटि होती है:

WMIDiag must be run from native 64-bit environment. It is not supported in Wow64.

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

WMIDiag द्वारा अपना कार्य पूरा करने के बाद, व्यवस्थापक को लॉग फ़ाइलों की जांच करनी चाहिए, विश्लेषण करना चाहिए और पाई गई त्रुटियों को ठीक करने का प्रयास करना चाहिए।

दुर्भाग्य से, WMIDiag 2.2 का नवीनतम संस्करण केवल Windows 8.1/Windows Server 2012 R2 तक के संस्करणों के साथ ठीक से काम करता है। इस बिंदु पर, Microsoft ने डाउनलोड केंद्र से WMIDiag डाउनलोड करने के लिए लिंक को भी हटा दिया है। लेकिन अगर आप चाहें, तो यह स्क्रिप्ट वेब पर मिल सकती है।

WMIDiag WMI में स्थानीय त्रुटियों को ठीक करने के तरीके के बारे में विस्तृत जानकारी प्रदान करता है, लेकिन ज्यादातर मामलों में यह एक समय लेने वाला कार्य है और केवल महत्वपूर्ण सिस्टम (आमतौर पर उत्पादन सर्वर पर) में समस्याओं के समाधान की तलाश में खर्च किए गए समय के लायक है। . उपयोगकर्ता वर्कस्टेशन के मामले में, विंडोज़ में डब्लूएमआई रिपोजिटरी को रीसेट करना और पुनर्निर्माण करना बहुत आसान है।

WMI रिपोजिटरी की मरम्मत करना और MOF फ़ाइलों को पुन:संकलित करना

विंडोज 10/विंडोज सर्वर 2016 पर, आप कमांड का उपयोग करके WMI रिपॉजिटरी की अखंडता की जांच कर सकते हैं:

winmgmt /verifyrepository

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

यदि आदेश देता है कि WMI डेटाबेस असंगत स्थिति में है (INCONSISTENT या WMI repository verification failed ), आपको WMI रिपॉजिटरी त्रुटियों का सॉफ्ट फिक्स करने का प्रयास करना चाहिए:

Winmgmt /salvagerepository

WMI repository has been salvaged.

यह कमांड WMI रिपॉजिटरी की स्थिरता की जाँच करता है और विसंगतियों के पाए जाने पर WMI डेटाबेस को फिर से बनाता है।

WMI सेवा को पुनरारंभ करें:

net stop Winmgmt
net start Winmgmt

यदि मानक WMI फ़िक्स काम नहीं करता है, तो निम्न स्क्रिप्ट आज़माएँ। यह स्क्रिप्ट कंप्यूटर पर डब्लूएमआई सेवा को पुनर्प्राप्त करने के लिए एक "सॉफ्ट" विकल्प है (डीएलएल पुस्तकालय और डब्लूएमआई फिर से पंजीकृत हैं और एमओएफ फाइलें पुन:संकलित हैं)। यह प्रक्रिया सुरक्षित है और इसके कार्यान्वयन से ऑपरेटिंग सिस्टम के साथ कोई और समस्या उत्पन्न नहीं होनी चाहिए:

sc config winmgmt start= disabled
net stop winmgmt
cd %windir%\system32\wbem
for /f %s in ('dir /b *.dll') do regsvr32 /s %s
wmiprvse /regserver
sc config winmgmt start= auto
net start winmgmt
for /f %s in ('dir /b *.mof') do mofcomp %s
for /f %s in ('dir /b *.mfl') do mofcomp %s

Windows के 64-बिट संस्करण पर, SysWOW64 निर्देशिका के लिए भी इन चरणों का पालन किया जाना चाहिए। तीसरी पंक्ति को इसके साथ बदलें:

cd %windir%\SysWOW64\wbem

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

इन आदेशों को केवल कमांड प्रॉम्प्ट में चिपकाकर चलाया जा सकता है, या आप स्क्रिप्ट को एक BAT फ़ाइल के रूप में सहेज सकते हैं (wmi_soft_repair.bat ) और इसे व्यवस्थापक अनुमतियों के साथ चलाएं। स्क्रिप्ट समाप्त होने के बाद, विंडोज़ को पुनरारंभ करें और जांचें कि डब्लूएमआई काम कर रहा है या नहीं।

WMI रिपॉजिटरी का पुनर्निर्माण

यदि ऊपर वर्णित विधि ने मदद नहीं की है, तो WMI पुनर्प्राप्ति के अधिक "कठिन" तरीके का उपयोग करें जिसका तात्पर्य WMI रिपॉजिटरी के मनोरंजन से है।

WMI रिपॉजिटरी %windir%\System32\Wbem\Repository . में स्थित है और एक डेटाबेस है जिसमें मेटाडेटा और WMI कक्षाओं की परिभाषाओं की जानकारी होती है। कुछ मामलों में WMI रिपॉजिटरी में स्थिर वर्ग की जानकारी भी हो सकती है। जब रिपॉजिटरी क्षतिग्रस्त हो जाती है, तो WMI सेवा (Winmgmt) की गतिविधि में त्रुटियाँ होती हैं।

यदि आपको संदेह है कि WMI रिपोजिटरी क्षतिग्रस्त है, तो ध्यान रखें कि इसे केवल तभी बनाया जाना चाहिए जब WMI को पुनर्स्थापित करने का कोई अन्य साधन प्रभावी न हो।

निम्न आदेश WMI डेटाबेस को उसकी मूल स्थिति में रीसेट कर देगा (जैसा कि एक साफ विंडोज इंस्टाल के बाद)। WMI रिपॉजिटरी को हार्ड रीसेट करने के लिए इस कमांड का उपयोग करें यदि साल्वेजरेपोजिटरी पैरामीटर ने समस्या को ठीक नहीं किया:

Winmgmt /resetrepository

टिप. व्यवहार में, ऐसे मामले होते हैं, जब WMI रिपॉजिटरी के पुनर्निर्माण से तृतीय-पक्ष सॉफ़्टवेयर में समस्याएँ आती हैं। इसका कारण यह है कि WMI डेटाबेस में सभी रिकॉर्ड साफ़ हो जाते हैं (एक स्वच्छ प्रणाली की स्थिति में)। ऐसे सॉफ़्टवेयर को पुनर्प्राप्ति मोड में पुनर्स्थापित करना पड़ सकता है।

अगर दोनों कमांड (Winmgmt /salvagerepository और Winmgmt /resetrepository ) ने WMI डेटाबेस की सुसंगत स्थिति को पुनर्स्थापित नहीं किया, निम्न स्क्रिप्ट के साथ WMI डेटाबेस का हार्ड रीसेट करने का प्रयास करें:

sc config winmgmt start= disabled
sc config winmgmt start= disabled
net stop winmgmt
cd %windir%\system32\wbem
winmgmt /resetrepository
winmgmt /resyncperf
if exist Repos_bakup rd Repos_bakup /s /q
rename Repository Repos_bakup
regsvr32 /s %systemroot%\system32\scecli.dll
regsvr32 /s %systemroot%\system32\userenv.dll
for /f %s in ('dir /b *.dll') do regsvr32 /s %s
for /f %s in ('dir /b *.mof') do mofcomp %s
for /f %s in ('dir /b *.mfl') do mofcomp %s
sc config winmgmt start= auto
net start winmgmt
wmiprvse /regserver

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

Windows के 64-बिट संस्करण पर, आपको DLL/EXE को फिर से पंजीकृत करने और %windir%\sysWOW64\wbem निर्देशिका में MOF फ़ाइलों को पुन:संकलित करने की भी आवश्यकता है।

यह स्क्रिप्ट WMI रिपॉजिटरी फ़ोल्डर को पूरी तरह से हटा देती है और फिर से बनाती है (पुराना रिपॉजिटरी Repos_backup निर्देशिका में सहेजा जाता है)। स्क्रिप्ट पूरी होने के बाद, आपको विंडोज़ को पुनरारंभ करना होगा। फिर एक साधारण क्वेरी के साथ WMI सेवा की जाँच करें।

WMI रिपॉजिटरी स्थिति की जाँच करें। यदि त्रुटियां ठीक हो जाती हैं, तो winmgmt /verifyrepository आदेश वापस आना चाहिए:

WMI repository is consistent

WMI रिपॉजिटरी का समस्या निवारण, मरम्मत और पुनर्निर्माण कैसे करें?

इस लेख में, हमने WMI सेवा और रिपॉजिटरी के निदान और समस्या निवारण के बुनियादी तरीके दिखाए हैं।


  1. Windows रजिस्ट्री का बैकअप और पुनर्स्थापना कैसे करें

    यदि आप विंडोज रजिस्ट्री को बदलने की सोच रहे हैं, तो यह महत्वपूर्ण है कि आपके पास पहले उचित बैकअप हो। विंडोज कंप्यूटर के कामकाज के लिए एक महत्वपूर्ण हिस्सा होने के नाते, विंडोज रजिस्ट्री को नुकसान होने से आपके वर्कफ़्लो में महत्वपूर्ण बाधाएं आ सकती हैं। रजिस्ट्री बैकअप, इस प्रकार, इन समस्याओं में से

  1. ApplicationFrameHost.exe क्या है और इसकी मरम्मत कैसे करें?

    जब Windows गैर-मौजूद या दूषित ApplicationFrameHost.exe फ़ाइलों के बारे में त्रुटि संदेश प्रदर्शित करता है, तो चीजें किनारे हो जाती हैं। आप सॉफ़्टवेयर स्थापना, विंडोज़ को अपडेट करने और अन्य संबंधित कार्यों को करने में समस्याओं का सामना करना शुरू कर देते हैं। इसलिए इसे ठीक करना बेहद जरूरी है। आज, हम W

  1. Windows 11 को कैसे ठीक करें और दूषित फ़ाइलों को ठीक करें

    दूषित फ़ाइलें Windows 11 को ठीक करना चाहते हैं या, आप Windows 11 की मरम्मत कैसे करें? के बारे में सोच रहे होंगे सबसे पहले, आपको ज्यादा चिंता करने की आवश्यकता नहीं है क्योंकि आप इसमें अकेले नहीं हैं क्योंकि अन्य उपयोगकर्ता विंडोज 11 दूषित फ़ाइलों के सटीक सुधारों को भी नहीं जानते हैं। लेकिन मैं