Aracılığıyla paylaş


Set-WmiInstance

Mevcut bir Windows Yönetim Araçları (WMI) sınıfının örneğini oluşturur veya güncelleştirir.

Sözdizimi

Set-WmiInstance
   [-Class] <String>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   -InputObject <ManagementObject>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-ThrottleLimit <Int32>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   -Path <String>
   [-Arguments <Hashtable>]
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-WmiInstance
   [-PutType <PutType>]
   [-AsJob]
   [-Impersonation <ImpersonationLevel>]
   [-Authentication <AuthenticationLevel>]
   [-Locale <String>]
   [-EnableAllPrivileges]
   [-Authority <String>]
   [-Credential <PSCredential>]
   [-ThrottleLimit <Int32>]
   [-ComputerName <String[]>]
   [-Namespace <String>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Description

Set-WmiInstance cmdlet'i mevcut bir Windows Yönetim Araçları (WMI) sınıfının örneğini oluşturur veya güncelleştirir. Oluşturulan veya güncelleştirilen örnek WMI deposuna yazılır.

Windows PowerShell 3.0 ile sunulan yeni CIM cmdlet'leri WMI cmdlet'leriyle aynı görevleri gerçekleştirir. CIM cmdlet'leri WS-Management (WSMan) standartlarına ve Ortak Bilgi Modeli (CIM) standardına uygundur. bu, cmdlet'lerin Windows tabanlı bilgisayarları ve diğer işletim sistemlerini çalıştıran bilgisayarları yönetmek için aynı teknikleri kullanmasına olanak tanır. Set-WmiInstancekullanmak yerine Set-CimInstance veya New-CimInstance cmdlet'lerini düşünün.

Örnekler

Örnek 1: WMI günlük düzeyini ayarlama

Set-WmiInstance -Class Win32_WMISetting -Arguments @{LoggingLevel=2}

__GENUS                        : 2
__CLASS                        : Win32_WMISetting
__SUPERCLASS                   : CIM_Setting
__DYNASTY                      : CIM_Setting
__RELPATH                      : Win32_WMISetting=@
__PROPERTY_COUNT               : 27
__DERIVATION                   : {CIM_Setting}
__SERVER                       : SYSTEM01
__NAMESPACE                    : root\cimv2
__PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace      : \\root\cimv2
ASPScriptEnabled               : False
AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\n...}
AutoStartWin9X                 :
BackupInterval                 :
BackupLastTime                 :
BuildVersion                   : 6001.18000
Caption                        :
DatabaseDirectory              : C:\Windows\system32\wbem\repository
DatabaseMaxSize                :
Description                    :
EnableAnonWin9xConnections     :
EnableEvents                   : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects   :
HighThresholdOnEvents          : 20000000
InstallationDirectory          : C:\Windows\system32\wbem
LastStartupHeapPreallocation   :
LoggingDirectory               : C:\Windows\system32\wbem\Logs\
LoggingLevel                   : 2
LowThresholdOnClientObjects    :
LowThresholdOnEvents           : 10000000
MaxLogFileSize                 : 65536
MaxWaitOnClientObjects         :
MaxWaitOnEvents                : 2000
MofSelfInstallDirectory        :
SettingID                      :

Bu komut WMI günlük düzeyini 2 olarak ayarlar. komutu, ayarlanacak özelliğini ve değeri bağımsız değişken parametresinde bir değer çifti olarak kabul eder. parametresi, @{property = value} yapısı tarafından tanımlanan bir karma tablo alır. Döndürülen sınıf bilgileri yeni değeri yansıtır.

Örnek 2: Ortam değişkeni ve değeri oluşturma

$setWmiInstanceSplat = @{
    Class = 'Win32_Environment'
    Arguments = @{
        Name="testvar"
        VariableValue="testvalue"
        UserName="<SYSTEM>"
    }
}
Set-WmiInstance @setWmiInstanceSplat

__GENUS          : 2
__CLASS          : Win32_Environment
__SUPERCLASS     : CIM_SystemResource
__DYNASTY        : CIM_ManagedSystemElement
__RELPATH        : Win32_Environment.Name="testvar",UserName="<SYSTEM>"
__PROPERTY_COUNT : 8
__DERIVATION     : {CIM_SystemResource, CIM_LogicalElement, CIM_ManagedSystemElement}
__SERVER         : SYSTEM01
__NAMESPACE      : root\cimv2
__PATH           : \\SYSTEM01\root\cimv2:Win32_Environment.Name="testvar",UserName="<SYSTEM>"
Caption          : <SYSTEM>\testvar
Description      : <SYSTEM>\testvar
InstallDate      :
Name             : testvar
Status           : OK
SystemVariable   : True
UserName         : <SYSTEM>
VariableValue    : testvalue

Bu komut testvardeğerine sahip testvalue ortam değişkenini oluşturur. Bunu, Win32_Environment WMI sınıfının yeni bir örneğini oluşturarak yapar. Bu işlem uygun kimlik bilgileri gerektirir ve yeni ortam değişkenini görmek için Windows PowerShell'i yeniden başlatmanız gerekebilir.

Örnek 3: Birkaç uzak bilgisayar için WMI günlük düzeyini ayarlama

$setWmiInstanceSplat = @{
    Class = 'Win32_WMISetting'
    Arguments = @{LoggingLevel = 2}
    ComputerName = 'system01', 'system02', 'system03'
}
Set-WmiInstance @setWmiInstanceSplat

__GENUS                        : 2
__CLASS                        : Win32_WMISetting
__SUPERCLASS                   : CIM_Setting
__DYNASTY                      : CIM_Setting
__RELPATH                      : Win32_WMISetting=@
__PROPERTY_COUNT               : 27
__DERIVATION                   : {CIM_Setting}
__SERVER                       : SYSTEM01
__NAMESPACE                    : root\cimv2
__PATH                         : \\SYSTEM01\root\cimv2:Win32_WMISetting=@
ASPScriptDefaultNamespace      : \\root\cimv2
ASPScriptEnabled               : False
AutorecoverMofs                : {%windir%\system32\wbem\cimwin32.mof, %windir%\system32\wbem\n...}
AutoStartWin9X                 :
BackupInterval                 :
BackupLastTime                 :
BuildVersion                   : 6001.18000
Caption                        :
DatabaseDirectory              : C:\Windows\system32\wbem\repository
DatabaseMaxSize                :
Description                    :
EnableAnonWin9xConnections     :
EnableEvents                   : False
EnableStartupHeapPreallocation : False
HighThresholdOnClientObjects   :
HighThresholdOnEvents          : 20000000
InstallationDirectory          : C:\Windows\system32\wbem
LastStartupHeapPreallocation   :
LoggingDirectory               : C:\Windows\system32\wbem\Logs\
LoggingLevel                   : 2
LowThresholdOnClientObjects    :
LowThresholdOnEvents           : 10000000
MaxLogFileSize                 : 65536
MaxWaitOnClientObjects         :
MaxWaitOnEvents                : 2000
MofSelfInstallDirectory        :
SettingID                      :
...

Bu komut WMI günlük düzeyini 2 olarak ayarlar. komutu, ayarlanacak özelliğini ve değeri bağımsız değişken parametresinde bir değer çifti olarak kabul eder. parametresi, @{property = value} yapısı tarafından tanımlanan bir karma tablo alır. Döndürülen sınıf bilgileri yeni değeri yansıtır.

Parametreler

-Arguments

Değiştirilecek özelliğin adını ve bu özelliğin yeni değerini belirtir. Ad ve değer bir ad-değer çifti olmalıdır. Ad-değer çifti, komut satırında karma tablo olarak geçirilir. Mesela:

@{Setting1=1; Setting2=5; Setting3="test"}

Tür:Hashtable
Diğer adlar:Args, Property
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-AsJob

Bu cmdlet'in arka plan işi olarak çalıştığını gösterir. Tamamlanması uzun süren komutları çalıştırmak için bu parametreyi kullanın.

AsJob parametresini belirttiğinizde, komut arka plan işini temsil eden bir nesne döndürür ve komut istemini görüntüler. İş tamamlarken oturumda çalışmaya devam edebilirsiniz. Uzak bir bilgisayar için kullanılırsa, iş yerel bilgisayarda oluşturulur ve uzak bilgisayarlardan elde edilen sonuçlar otomatik olarak yerel bilgisayara döndürülür. İşi yönetmek için, İşi adlarını (İşi cmdlet'leri) içeren cmdlet'leri kullanın. İş sonuçlarını almak için Receive-Job cmdlet'ini kullanın.

Bu parametreyi uzak bilgisayarlarla birlikte kullanmak için yerel ve uzak bilgisayarların uzaktan iletişim için yapılandırılması gerekir. Ayrıca, Windows PowerShell'i yönetici olarak çalıştır seçeneğini kullanarak başlatmanız gerekir. Daha fazla bilgi için bkz. about_Remote_Requirements.

Windows PowerShell arka plan işleri hakkında daha fazla bilgi için bkz. about_Jobs ve about_Remote_Jobs.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Authentication

WMI bağlantısıyla kullanılması gereken kimlik doğrulama düzeyini belirtir. Bu parametre için kabul edilebilir değerler şunlardır:

  • -1: Değişmedi.
  • 0: Varsayılan.
  • 1: Yok. Kimlik doğrulaması yapılmaz.
  • 2: Bağlan. Kimlik doğrulaması yalnızca istemci uygulamayla bir ilişki kurduğunda gerçekleştirilir.
  • 3: Ara. Kimlik doğrulaması yalnızca uygulama isteği aldığında her çağrının başlangıcında gerçekleştirilir.
  • 4: Paket. Kimlik doğrulaması, istemciden alınan tüm verilerde gerçekleştirilir.
  • 5: PacketIntegrity. İstemci ile uygulama arasında aktarılan tüm verilerin kimliği doğrulanır ve doğrulanır.
  • 6: PacketPrivacy. Diğer kimlik doğrulama düzeylerinin özellikleri kullanılır ve tüm veriler şifrelenir.
Tür:AuthenticationLevel
Kabul edilen değerler:Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Authority

WMI bağlantısının kimliğini doğrulamak için kullanılacak yetkiyi belirtir. Standart NTLM veya Kerberos kimlik doğrulaması belirtebilirsiniz. NTLM'yi kullanmak için, yetkili ayarını ntlmdomain:<DomainName>olarak ayarlayın; burada <DomainName> geçerli bir NTLM etki alanı adı tanımlar. Kerberos kullanmak için kerberos:<DomainName>\<ServerName>belirtin. Yerel bilgisayara bağlanırken yetkili ayarını ekleyemezsiniz.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Class

WMI sınıfının adını belirtir.

Tür:String
Position:0
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ComputerName

Bu cmdlet'in çalıştığı bilgisayarın adını belirtir. Varsayılan değer yerel bilgisayardır.

Bir veya daha fazla bilgisayarın NetBIOS adını, IP adresini veya tam etki alanı adını yazın. Yerel bilgisayarı belirtmek için bilgisayar adını, bir nokta (.) veya localhost yazın.

Bu parametre Windows PowerShell uzaktan iletişimini desteklemez. Bilgisayarınız uzak komutları çalıştıracak şekilde yapılandırılmamış olsa bile ComputerName parametresini kullanabilirsiniz.

Tür:String[]
Diğer adlar:Cn
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Confirm

Cmdlet'i çalıştırmadan önce sizden onay ister.

Tür:SwitchParameter
Diğer adlar:cf
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Credential

Bu eylemi gerçekleştirme iznine sahip bir kullanıcı hesabı belirtir. Varsayılan değer geçerli kullanıcıdır.

User01 veya Domain01\User01gibi bir kullanıcı adı yazın veya cmdlet'i tarafından oluşturulan gibi Get-Credential nesnesi girin. Bir kullanıcı adı yazarsanız, bu cmdlet parola ister.

Bu parametre, parametresiyle yüklenen sağlayıcılar tarafından desteklenmez, Windows PowerShell ile yüklenen sağlayıcılar tarafından desteklenmez.

Tür:PSCredential
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-EnableAllPrivileges

Bu cmdlet'in WMI çağrısından önce geçerli kullanıcının tüm izinlerini etkinleştirdiğini gösterir.

Tür:SwitchParameter
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Impersonation

Kullanılacak kimliğe bürünme düzeyini belirtir. Bu parametre için kabul edilebilir değerler şunlardır:

  • 0: Varsayılan. Varsayılan kimliğe bürünme düzeyi için yerel kayıt defterini okur ve bu değer genellikle 3: Kimliğe bürün olarak ayarlanır.
  • 1: Anonim. Çağıranın kimlik bilgilerini gizler.
  • 2: Tanımla. Nesnelerin çağıranın kimlik bilgilerini sorgulamasına izin verir.
  • 3: Kimliğine bürün. Nesnelerin çağıranın kimlik bilgilerini kullanmasına izin verir.
  • 4: Temsilci. Nesnelerin diğer nesnelerin çağıranın kimlik bilgilerini kullanmasına izin vermesine izin verir.
Tür:ImpersonationLevel
Kabul edilen değerler:Default, Anonymous, Identify, Impersonate, Delegate
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-InputObject

Giriş olarak kullanılacak bir ManagementObject nesnesi belirtir. Bu parametre kullanıldığında, Arguments parametresi dışındaki tüm diğer parametreler yoksayılır.

Tür:ManagementObject
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:True
Joker karakterleri kabul et:False

-Locale

WMI nesneleri için tercih edilen yerel ayarı belirtir. Yerel Ayar parametresi, tercih edilen sırada MS_<LCID> biçimde bir dizide belirtilir.

Tür:String
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Namespace

Sınıfı parametresiyle kullanıldığında başvuruda bulunulan WMI sınıfının bulunduğu WMI deposu ad alanını belirtir.

Tür:String
Diğer adlar:NS
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-Path

Oluşturmak veya güncelleştirmek istediğiniz örneğin WMI nesne yolunu belirtir.

Tür:String
Position:Named
Default value:None
Gerekli:True
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-PutType

WMI örneğinin oluşturulup oluşturulmayacağını veya güncelleştirilip güncelleştirilmeyeceğini gösterir. Bu parametre için kabul edilebilir değerler şunlardır:

  • UpdateOnly Var olan bir WMI örneğini güncelleştirir.
  • CreateOnly Yeni bir WMI örneği oluşturur.
  • UpdateOrCreate Varsa WMI örneğini güncelleştirir veya bir örnek yoksa yeni bir örnek oluşturur.
Tür:PutType
Kabul edilen değerler:None, UpdateOnly, CreateOnly, UpdateOrCreate
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-ThrottleLimit

Bu komutu çalıştırmak için oluşturulabilecek en fazla eşzamanlı bağlantı sayısını belirtir. Bu parametre, AsJob parametresiyle birlikte kullanılır. Kısıtlama sınırı yalnızca geçerli komut için geçerlidir, oturuma veya bilgisayara uygulanmaz.

Tür:Int32
Position:Named
Default value:None
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

-WhatIf

Cmdlet çalıştırılırsa ne olacağını gösterir. Cmdlet çalıştırılmıyor.

Tür:SwitchParameter
Diğer adlar:wi
Position:Named
Default value:False
Gerekli:False
İşlem hattı girişini kabul et:False
Joker karakterleri kabul et:False

Girişler

None

Bu cmdlet girişi kabul etmez.

Çıkışlar

None

Bu cmdlet çıkış oluşturmaz.

Notlar

Windows PowerShell, Set-WmiInstanceiçin aşağıdaki diğer adları içerir:

  • swmi