about_WMI_Cmdlets
Deskripsi singkat
Menyediakan informasi latar belakang tentang Instrumentasi Manajemen Windows (WMI) dan Windows PowerShell.
Deskripsi panjang
Topik ini menyediakan informasi tentang teknologi WMI, cmdlet WMI untuk Windows PowerShell, jarak jauh berbasis WMI, akselerator WMI, dan pemecahan masalah WMI. Topik ini juga menyediakan tautan ke informasi lebih lanjut tentang WMI.
TENTANG WMI
Instrumentasi Manajemen Windows (WMI) adalah implementasi Microsoft dari Manajemen Perusahaan Berbasis Web (WBEM), yang merupakan inisiatif industri untuk mengembangkan teknologi standar untuk mengakses informasi manajemen di lingkungan perusahaan. WMI menggunakan standar industri Common Information Model (CIM) untuk mewakili sistem, aplikasi, jaringan, perangkat, dan komponen terkelola lainnya. CIM dikembangkan dan dikelola oleh Distributed Management Task Force (DMTF). Anda dapat menggunakan WMI untuk mengelola komputer lokal dan jarak jauh. Misalnya, Anda dapat menggunakan WMI untuk melakukan hal berikut:
- Mulai proses pada komputer jarak jauh.
- Mulai ulang komputer dari jarak jauh.
- Dapatkan daftar aplikasi yang diinstal di komputer lokal atau jarak jauh.
- Mengkueri log peristiwa Windows pada komputer lokal atau jarak jauh.
CMDLET WMI UNTUK WINDOWS POWERSHELL
Windows PowerShell menerapkan fungsionalitas WMI melalui serangkaian cmdlet yang tersedia di Windows PowerShell secara default. Anda dapat menggunakan cmdlet ini untuk menyelesaikan tugas end-to-end yang diperlukan untuk mengelola komputer lokal dan jarak jauh.
Cmdlet WMI berikut disertakan.
Cmdlet | Deskripsi |
---|---|
Get-WmiObject | Mendapatkan instans kelas atau informasi WMI |
tentang kelas yang tersedia. | |
Invoke-WmiMethod | Memanggil metode WMI. |
Register-WmiEvent | Berlangganan acara WMI. |
Remove-WmiObject | Menghapus kelas dan instans WMI. |
Set-WmiInstance | Membuat atau memodifikasi instans kelas WMI. |
PERINTAH SAMPEL
Perintah berikut menampilkan informasi BIOS untuk komputer lokal.
C:\PS> get-wmiobject win32_bios | format-list *
Perintah berikut menampilkan informasi tentang layanan WinRM untuk tiga komputer jarak jauh.
$wql = "select * from win32_service where name='WinRM'"
get-wmiobject -query $wql -computername server01, server01, server03
Perintah yang lebih kompleks berikut keluar dari semua instans program.
C:\PS> notepad.exe
C:\PS> $wql = "select * from win32_process where name='notepad.exe'"
C:\PS> $np = get-wmiobject -query $wql
C:\PS> $np | remove-wmiobject
JARAK JAUH BERBASIS WMI
Meskipun kemampuan untuk mengelola sistem lokal melalui WMI berguna, kemampuan jarak jauh inilah yang menjadikan WMI alat administratif yang kuat. WMI menggunakan Distributed Component Object Model (DCOM) Microsoft untuk menyambungkan dan mengelola sistem. Anda mungkin harus mengonfigurasi beberapa sistem untuk mengizinkan koneksi DCOM. Pengaturan firewall dan izin DCOM yang terkunci dapat memblokir kemampuan WMI untuk mengelola sistem dari jarak jauh.
AKSELERATOR TIPE WMI
Windows PowerShell menyertakan akselerator jenis WMI. Akselerator jenis WMI (pintasan) ini memungkinkan lebih banyak akses langsung ke objek WMI daripada pendekatan akselerator non-jenis yang akan memungkinkan.
Jenis akselerator berikut didukung dengan WMI:
[WMISEARCHER] - Pintasan untuk mencari objek WMI.
[WMICLASS] - Pintasan untuk mengakses properti statis dan metode kelas.
[WMI] - Pintasan untuk mendapatkan satu instans kelas.
[WMISEARCHER] adalah akselerator jenis untuk ManagementObjectSearcher. Ini dapat mengambil konstruktor string untuk membuat pencari yang kemudian dapat Anda lakukan GET() pada.
Contohnya:
PS> $s = [WmiSearcher]'Select * from Win32_Process where Handlecount > 1000'
PS> $s.Get() |sort handlecount |ft handlecount,__path,name -auto
count __PATH name
----- ------ ----
1105 \\SERVER01\root\cimv2:Win32_Process.Handle="3724" PowerShell...
1132 \\SERVER01\root\cimv2:Win32_Process.Handle="1388" winlogon.exe
1495 \\SERVER01\root\cimv2:Win32_Process.Handle="2852" iexplore.exe
1699 \\SERVER01\root\cimv2:Win32_Process.Handle="1204" OUTLOOK.EXE
1719 \\SERVER01\root\cimv2:Win32_Process.Handle="1912" iexplore.exe
2579 \\SERVER01\root\cimv2:Win32_Process.Handle="1768" svchost.exe
[WMICLASS] adalah akselerator jenis untuk ManagementClass. Ini memiliki konstruktor string yang mengambil jalur WMI lokal atau absolut ke kelas WMI dan mengembalikan objek yang terikat ke kelas tersebut.
Contohnya:
PS> $c = [WMICLASS]"root\cimv2:WIn32_Process"
PS> $c |fl *
Name : Win32_Process
__GENUS : 1
__CLASS : Win32_Process
__SUPERCLASS : CIM_Process
__DYNASTY : CIM_ManagedSystemElement
__RELPATH : Win32_Process
__PROPERTY_COUNT : 45
__DERIVATION : {CIM_Process, CIM_LogicalElement,
CIM_ManagedSystemElement}
__SERVER : SERVER01
__NAMESPACE : ROOT\cimv2
__PATH : \\SERVER01\ROOT\cimv2:Win32_Process
[WMI] adalah akselerator jenis untuk ManagementObject. Ini memiliki konstruktor string yang mengambil jalur WMI lokal atau absolut ke instans WMI dan mengembalikan objek yang terikat ke instans tersebut.
Contohnya:
PS> $p = [WMI]'\\SERVER01\root\cimv2:Win32_Process.Handle="1204"'
PS> $p.Name
OUTLOOK.EXE
PEMECAHAN MASALAH WMI
Masalah berikut adalah masalah paling umum yang mungkin terjadi ketika Anda mencoba menyambungkan ke komputer jarak jauh.
Masalah 1: Komputer jarak jauh tidak online.
Jika komputer sedang offline, Anda tidak akan dapat tersambung ke komputer tersebut dengan menggunakan WMI. Anda mungkin menerima pesan kesalahan berikut:
Remote server machine does not exist or is unavailable
Jika Anda menerima pesan kesalahan ini, verifikasi bahwa komputer sedang online. Coba ping komputer jarak jauh.
Masalah 2: Anda tidak memiliki hak administrator lokal pada komputer jarak jauh.
Untuk menggunakan WMI dari jarak jauh, Anda harus memiliki hak administrator lokal pada komputer jarak jauh. Jika tidak, akses ke komputer tersebut akan ditolak.
Untuk memverifikasi keamanan namespace:
- Klik Mulai, klik kanan Komputer Saya, lalu klik Kelola.
- Di Manajemen Komputer, perluas Layanan dan Aplikasi, klik kanan Kontrol WMI, lalu klik Properti.
- Dalam kotak dialog Properti Kontrol WMI, klik tab Keamanan.
Masalah 3: Firewall memblokir akses ke komputer jarak jauh.
WMI menggunakan protokol DCOM (Distributed COM) dan RPC (Remote Procedure Call) untuk melintasi jaringan. Secara default, banyak firewall memblokir lalu lintas DCOM dan RPC. Jika firewall Anda memblokir protokol ini, koneksi Anda akan gagal. Misalnya, Windows Firewall di Microsoft Windows XP Service Pack 2 dikonfigurasi untuk secara otomatis memblokir semua lalu lintas jaringan yang tidak diminta, termasuk DCOM dan WMI. Dalam konfigurasi defaultnya, Windows Firewall menolak permintaan WMI masuk, dan Anda menerima pesan kesalahan berikut:
Remote server machine does not exist or is unavailable