Set-Service (Microsoft.PowerShell.Management)


Set-Service

Modül:
Microsoft.PowerShell.Management

Bir hizmeti başlatır, durdurur, askıya alır ve özelliklerini değiştirir.

Sözdizimi

Set-Service
   [-Name] <String>
   [-DisplayName <String>]
   [-Credential <PSCredential>]
   [-Description <String>]
   [-StartupType <ServiceStartupType>]
   [-Status <String>]
   [-SecurityDescriptorSddl <String>]
   [-Force]
   [-PassThru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
Set-Service
   [-InputObject] <ServiceController>
   [-DisplayName <String>]
   [-Credential <PSCredential>]
   [-Description <String>]
   [-StartupType <ServiceStartupType>]
   [-SecurityDescriptorSddl <String>]
   [-Status <String>]
   [-Force]
   [-PassThru]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Tanım

Bu cmdlet yalnızca Windows platformunda mevcuttur.

Set-Service cmdlet'i bir hizmetin Durum, Açıklama, GörünenAdı ve < gibi özelliklerini değiştirir.StartupType. Set-Service bir hizmeti başlatabilir, durdurabilir, askıya alabilir veya duraklatabilir. Bir hizmeti tanımlamak için hizmetin adını girin veya bir hizmet nesnesi gönderin. Veya Set-Service'e ardışık düzen üzerinden bir hizmet adı veya hizmet nesnesi gönderin.

Örnekler

Örnek 1: Görünen adı değiştirme

Bu örnekte bir hizmetin görünen adı değiştirilmiştir. Orijinal görünen adı görüntülemek için Get-Service'i kullanın.

Set-Service -Name LanmanWorkstation -DisplayName "LanMan Workstation"

Set-Service, hizmetin adı olan LanmanWorkstation'u belirtmek için Ad parametresini kullanır. DisplayName parametresi yeni görünen adı (LanMan Workstation) belirtir.

Örnek 2: Hizmetlerin başlangıç türünü değiştirme

Bu örnek, bir hizmetin başlangıç türünün nasıl değiştirileceğini gösterir.

Set-Service -Name BITS -StartupType Automatic
Get-Service BITS | Select-Object -Property Name, StartType, Status

Name  StartType   Status
----  ---------   ------
BITS  Automatic  Running

Set-Service, hizmetin adı olan BITS'i belirtmek için Ad parametresini kullanır. StartupType parametresi hizmeti Otomatik olarak ayarlar.

Get-Service, BITS hizmetini belirtmek için Ad parametresini kullanır ve nesneyi ardışık düzene gönderir. Select-Object, BITS hizmetinin durumunu görüntülemek için Property parametresini kullanır.

Örnek 3: Bir hizmetin açıklamasını değiştirme

Bu örnek, BITS hizmetinin açıklamasını değiştirir ve sonucu görüntüler.

Get-CimInstance cmdlet'i, hizmetin Açıklama'sını içeren bir Win32_Service nesnesi döndürdüğü için kullanılır.

Get-CimInstance Win32_Service -Filter 'Name = "BITS"'  | Format-List  Name, Description

Name        : BITS
Description : Transfers files in the background using idle network bandwidth. If the service is
              disabled, then any applications that depend on BITS, such as Windows Update or MSN
              Explorer, will be unable to automatically download programs and other information.

Set-Service -Name BITS -Description "Transfers files in the background using idle network bandwidth."
Get-CimInstance Win32_Service -Filter 'Name = "BITS"' | Format-List  Name, Description

Name        : BITS
Description : Transfers files in the background using idle network bandwidth.

Get-CimInstance, nesneyi işlem hattından Format-List'e gönderir ve hizmetin adını ve açıklamasını görüntüler. Karşılaştırma amacıyla komut, açıklama güncellenmeden önce ve sonra çalıştırılır.

Set-Service, BITS hizmetini belirtmek için Ad parametresini kullanır. Açıklama parametresi, hizmetlerin açıklamasına ilişkin güncellenmiş metni belirtir.

Örnek 4: Bir hizmeti başlatın

Bu örnekte bir hizmet başlatılmıştır.

Set-Service -Name WinRM -Status Running -PassThru

Status   Name               DisplayName
------   ----               -----------
Running  WinRM              Windows Remote Management (WS-Manag...

Set-Service, WinRM hizmetini belirtmek için Ad parametresini kullanır. Durum parametresi, hizmeti başlatmak için Çalışıyor değerini kullanır. PassThru parametresi, sonuçları görüntüleyen bir ServiceController nesnesinin çıktısını verir.

Örnek 5: Bir hizmeti askıya alma

Bu örnek, hizmeti duraklatmak için işlem hattını kullanır.

Get-Service -Name Schedule | Set-Service -Status Paused

Get-Service, Schedule hizmetini belirtmek için Ad parametresini kullanır ve nesneyi ardışık düzene gönderir. Set-Service, hizmeti Duraklatıldı olarak ayarlamak için Durum parametresini kullanır.

Örnek 6: Bir hizmeti durdurma

Bu örnek, bir hizmeti durdurmak için bir değişken kullanır.

$S = Get-Service -Name Schedule
Set-Service -InputObject $S -Status Stopped

Get-Service, Plan hizmetini belirtmek için Ad parametresini kullanır. Nesne, $S değişkeninde saklanır. Set-Service, InputObject parametresini kullanır ve $S'de depolanan nesneyi belirtir. Durum parametresi hizmeti Durduruldu olarak ayarlar.

Örnek 7: Uzak sistemdeki bir hizmeti durdurma

Bu örnek, uzak bilgisayardaki bir hizmeti durdurur. Daha fazla bilgi için bkz. Invoke-Command.

$Cred = Get-Credential
$S = Get-Service -Name Schedule
Invoke-Command -ComputerName server01.contoso.com -Credential $Cred -ScriptBlock {
  Set-Service -InputObject $S -Status Stopped
}

Get-Credential bir kullanıcı adı ve şifre ister ve kimlik bilgilerini $Cred değişkeninde saklar. Get-Service, Schedule hizmetini belirtmek için Ad parametresini kullanır. Nesne, $S değişkeninde saklanır.

Invoke-Command, uzaktaki bir bilgisayarı belirtmek için BilgisayarAdı parametresini kullanır. Kimlik Bilgileri parametresi bilgisayarda oturum açmak için $Cred değişkenini kullanır. ScriptBlock, Set-Service'i çağırır. InputObject parametresi $S'de depolanan hizmet nesnesini belirtir. Durum parametresi hizmeti Durduruldu olarak ayarlar.

Örnek 8: Bir hizmetin kimlik bilgisini değiştirme

Bu örnek, bir hizmeti yönetmek için kullanılan kimlik bilgilerini değiştirir.

$credential = Get-Credential
Set-Service -Name Schedule -Credential $credential

Get-Credential bir kullanıcı adı ve şifre ister ve kimlik bilgilerini $credential değişkeninde saklar. Set-Service, Schedule hizmetini belirtmek için Ad parametresini kullanır. Kimlik Bilgisi parametresi $credential değişkenini kullanır ve Schedule hizmetini günceller.

Örnek 9: Bir hizmetin SecurityDescriptor'ını değiştirme

Bu örnek, bir hizmetin SecurityDescriptor'ını değiştirir.

$SDDL = "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;SU)"
Set-Service -Name "BITS" -SecurityDescriptorSddl $SDDL

SecurityDescriptor, $SDDL değişkeninde saklanır. Set-Service, BITS hizmetini belirtmek için Ad parametresini kullanır. SecurityDescriptorSddl parametresi, BITS hizmetinin SecurityDescriptor değerini değiştirmek için $SDDL'yi kullanır.

Örnek 10: Birden çok hizmet için başlangıç türünü ayarlama

Set-Service cmdlet'i aynı anda yalnızca bir hizmet adını kabul eder. Ancak birden çok hizmetin yapılandırmasını değiştirmek için birden çok hizmeti Set-Service'e yönlendirebilirsiniz.

Get-Service SQLWriter,spooler |
    Set-Service -StartupType Automatic -PassThru |
    Select-Object Name, StartType

Name      StartType
----      ---------
spooler   Automatic
SQLWriter Automatic

Parametreler

-Confirm

Set-Service'i çalıştırmadan önce sizden onay ister.

Tip :

SwitchParameter

Takma adlar:

cf

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Credential

Hizmet tarafından kullanılan hesabı Hizmet Oturum Açma Hesabı olarak belirtir.

Kullanıcı01 veya EtkiAlanı01\Kullanıcı01 gibi bir kullanıcı adı yazın veya Get tarafından oluşturulan gibi bir PSCredential nesnesi girin. -Kimlik bilgisi cmdlet'i. Bir kullanıcı adı yazarsanız bu cmdlet sizden bir parola ister.

Kimlik bilgileri bir PSCredential nesnesinde, parola ise SecureString olarak depolanır.

Not

SecureString veri koruması hakkında daha fazla bilgi için bkz. SecureString ne kadar güvenli?.

Bu parametre PowerShell 6,0'da tanıtıldı.

Tip :

PSC kimlik bilgisi

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Description

Hizmet için yeni bir açıklama belirtir.

Hizmet açıklaması Bilgisayar Yönetimi, Hizmetler'de görünür. Açıklama, Get-Service ServiceController nesnesinin bir özelliği değildir. Hizmet açıklamasını görmek için hizmeti temsil eden bir Win32_Service nesnesi döndüren Get-CimInstance'ı kullanın.

Tip :

String

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-DisplayName

Hizmet için yeni bir görünen ad belirtir.

Not

Genellikle Set-Service yalnızca Windows hizmetlerinde çalışır, sürücülerde çalışmaz. Ancak bir sürücünün adını belirtirseniz Set-Service sürücüyü hedefleyebilir.

Tip :

String

Takma adlar:

DN

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Force

Hizmetin Durdurma modunu belirtir. Bu parametre yalnızca -Durum Durduruldu kullanıldığında çalışır. Etkinleştirilirse, Set-Service, hedef hizmet durdurulmadan önce bağımlı hizmetleri durdurur. Varsayılan olarak, çalışan diğer hizmetler hedef hizmete bağlı olduğunda özel durumlar ortaya çıkar.

Tip :

SwitchParameter

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-InputObject

Değiştirilecek hizmeti temsil eden bir ServiceController nesnesini belirtir. Nesneyi içeren bir değişken girin veya Hizmet Al komutu gibi nesneyi alan bir komut veya ifade yazın. Set-Service'e bir hizmet nesnesi göndermek için ardışık düzeni kullanabilirsiniz.

Tip :

ServiceController

Konum:

0

Varsayılan değer:

None

Gerekli:

True

Boru hattı girişini kabul edin:

True

Joker karakterleri kabul et:

False

-Name

Değiştirilecek hizmetin hizmet adını belirtir. Joker karakterlere izin verilmez. Set-Service'e bir hizmet adı göndermek için ardışık düzeni kullanabilirsiniz.

Not

Genellikle Set-Service yalnızca Windows hizmetlerinde çalışır, sürücülerde çalışmaz. Ancak bir sürücünün adını belirtirseniz Set-Service sürücüyü hedefleyebilir.

Tip :

String

Takma adlar:

ServiceName, SN

Konum:

0

Varsayılan değer:

None

Gerekli:

True

Boru hattı girişini kabul edin:

True

Joker karakterleri kabul et:

False

-PassThru

Değiştirilen hizmetleri temsil eden bir ServiceController nesnesini döndürür. Varsayılan olarak Set-Service herhangi bir çıktı üretmez.

Tip :

SwitchParameter

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-SecurityDescriptorSddl

Hizmetin SecurityDescriptor değerini Sddl biçiminde belirtir. Bu parametreyle Set-Service'i çağıran hesabın WRITE_DAC ve WRITE_OWNER izinlerine sahip olması gerekir. Daha fazla bilgi için bkz. Hizmet güvenliği ve erişim hakları.

Tip :

String

Takma adlar:

sd

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-StartupType

Hizmetin başlangıç modunu belirtir.

Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:

  • Otomatik - Hizmet, sistem başlatılırken işletim sistemi tarafından başlatılır veya başlatılır. Otomatik olarak başlatılan bir hizmet, manuel olarak başlatılan bir hizmete bağlıysa, manuel olarak başlatılan hizmet, sistem başlangıcında da otomatik olarak başlatılır.
  • AutomaticDelayedStart - Sistem önyüklendikten kısa bir süre sonra başlar.
  • Devre Dışı - Hizmet devre dışıdır ve bir kullanıcı veya uygulama tarafından başlatılamaz.
  • Geçersiz Değer - Etkisi yoktur. Cmdlet bir hata döndürmüyor ancak hizmetin StartupType'ı değiştirilmiyor.
  • Manuel - Hizmet yalnızca bir kullanıcı tarafından, Hizmet Kontrol Yöneticisi kullanılarak veya bir uygulama tarafından manuel olarak başlatılır.
Tip :

HizmetBaşlangıç Türü

Takma adlar:

StartMode, SM, ST, StartType

Kabul edilen değerler:

Otomatik, OtomatikGecikmeliBaşlatma, Devre Dışı, GeçersizDeğer, Manuel

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-Status

Hizmetin durumunu belirtir.

Bu parametre için kabul edilebilir değerler aşağıdaki gibidir:

  • Duraklatıldı. Hizmeti askıya alır.
  • Çalışıyor. Hizmeti başlatır.
  • Durduruldu. Hizmeti durdurur.
Tip :

String

Kabul edilen değerler:

Duraklatıldı, Çalışıyor, Durduruldu

Konum:

Adlandırılmış

Varsayılan değer:

None

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

-WhatIf

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

Tip :

SwitchParameter

Takma adlar:

wi

Konum:

Adlandırılmış

Varsayılan değer:

False

Gerekli:

False

Boru hattı girişini kabul edin:

False

Joker karakterleri kabul et:

False

Girişler

ServiceController

Bir hizmet nesnesini bu cmdlet'e aktarabilirsiniz.

Dize

Bu cmdlet'e hizmet adı içeren bir dize aktarabilirsiniz.

Çıkışlar

Yok

Varsayılan olarak bu cmdlet hiçbir çıktı döndürmez.

ServiceController

PassThru parametresini kullandığınızda, bu cmdlet bir ServiceController nesnesi döndürür.

Notlar

Bu cmdlet yalnızca Windows platformlarında kullanılabilir.

Set-Service yükseltilmiş izinler gerektirir. Yönetici olarak çalıştır seçeneğini kullanın.

Set-Service yalnızca mevcut kullanıcının hizmetleri yönetme iznine sahip olması durumunda hizmetleri kontrol edebilir. Bir komut düzgün çalışmıyorsa gerekli izinlere sahip olmayabilirsiniz.

Bir hizmetin hizmet adını veya görünen adını bulmak için Get-Service'i kullanın. Hizmet adları Ad sütununda, görünen adlar ise GörünenAd sütunundadır.

İlgili makaleler