Nezabudnite si prečítať predchádzajúce články v sérii:
- Naučte sa ako automatizovať systém Windows pomocou nástroja PowerShell
- Naučiť sa používať Cmdlets v PowerShell
- Učenie ako používať objekty v PowerShell
- Formátovanie učenia, filtrovanie a porovnávanie v systéme PowerShell
- Naučte sa používať Remoting v PowerShell
A zostávajte celú týždeň na zvyšok série.
úvod
Služba WMI znamená Windows Management Instrumentation. Slovo "Instrumentation" označuje skutočnosť, že služba WMI umožňuje získať informácie o vnútornom stave vášho počítača, podobne ako prístrojové dosky vo vašom aute dokážu získať a zobraziť informácie o stave vašich vnútorných komponentov.
Služba WMI pozostáva z úložiska, ktorý obsahuje triedy, ktoré predstavujú komponenty, ktoré by mohli byť spravované vo vašom počítači. To znamená, že práve preto, že služba WMI má triedu Win32_Battery, neznamená to, že váš počítač obsahuje batériu. Tieto triedy možno potom získať informácie lokálne alebo dokonca v sieti pomocou jazyka dotazu, ktorý je veľmi podobný SQLu nazývanému WQL. Služba WMI je však známa ako veľmi nespoľahlivá, hlavne preto, že je založená na RPC (Remote Procedure Calls), ktoré robia nejaké bláznivé veci s portami, na ktoré sa rozhodnú komunikovať.
Počínajúc Windows 8 a Serverom 2012, WMI sa postupne vyraďuje v prospech spoločného informačného modelu alebo CIM. Jediný rozdiel medzi službami WMI a CIM sú dopravné protokoly, ktoré používajú. Zatiaľ čo služba WMI vykonáva dopyty pomocou diaľkových procedúr, CIM používa protokol HTTP, ktorý sa javí ako obrovský rozdiel. Na backend stále rozprávajú s tým istým úložiskom informácií.
Používanie služby WMI
Najrýchlejší a najjednoduchší spôsob skúmania informácií, ktoré máte k dispozícii prostredníctvom služby WMI, je získať kópiu ľubovoľného bezplatného prehliadača objektov WMI. Toto sa nám páči. Po stiahnutí ho vypnite a budete mať grafické rozhranie na prehliadanie tried WMI.
Ak sa chcete dozvedieť niečo o konfigurácii disku počítača, stlačte kombináciu klávesov Ctrl + F, aby ste zobrazili vyhľadávacie pole a zadajte "logicaldisk" a stlačte kláves enter.
Get-WmiObject -Query “SELECT * FROM Win32_LogicalDisk”
Get-WmiObject –Class Win32_LogicalDisk
Get-WmiObject -Class Win32_LogicalDisk -ComputerName Viper –Credential viperadministrator
Používanie CIM
Majte na pamäti, že CIM je k dispozícii iba v systéme Windows 8 a Server 2012, vpred je to určite spôsob, ako ísť.
Get-CimInstance –ClassName Win32_LogicalDisk
Spoločnosť WMI bola v skutočnosti vyvinutá úplne oddeleným tímom v spoločnosti Microsoft, ale následne ju prevzali ľudia zodpovední za PowerShell. Boli to tí, ktorí si všimli, že bude veľmi ťažké vyčistiť neporiadok WMI za sebou. Pri pokuse o nápravu situácie sa pokúšajú sprístupniť nástroje WMI a CIM ďalším písaním obalových rutín, ktoré používajú WMI a CIM pod kapotou. Jediný spôsob, ako skontrolovať, či je cmdlet obal, je preskúmanie dokumentácie. Napríklad cmdlet Get-Hotfix je obal pre triedu Win32_QuickFixEngineering, ako je vidieť v dokumentácii.
Get-HotFix –ComputerName localhost