Set-Service

Hiermee wordt een service gestart, gestopt en onderbroken en worden de eigenschappen ervan gewijzigd.

Syntax

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>]

Description

Deze cmdlet is alleen beschikbaar op het Windows-platform.

De Set-Service cmdlet wijzigt de eigenschappen van een service, zoals status, beschrijving, DisplayName en StartupType. Set-Service kan een service starten, stoppen, onderbreken of onderbreken. Als u een service wilt identificeren, voert u de naam van de service in of verzendt u een serviceobject. U kunt ook een servicenaam of serviceobject naar de pijplijn verzenden.Set-Service

Voorbeelden

Voorbeeld 1: Een weergavenaam wijzigen

In dit voorbeeld wordt de weergavenaam van een service gewijzigd. Als u de oorspronkelijke weergavenaam wilt weergeven, gebruikt u Get-Service.

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

Set-Servicegebruikt de parameter Name om de naam van de service, LanmanWorkstation, op te geven. De parameter DisplayName geeft de nieuwe weergavenaam, LanMan Workstation.

Voorbeeld 2: Het opstarttype van services wijzigen

In dit voorbeeld ziet u hoe u het opstarttype van een service wijzigt.

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

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

Set-Service gebruikt de parameter Name om de naam van de service op te geven, BITS. De parameter StartupType stelt de service in op Automatisch.

Get-Service gebruikt de parameter Name om de BITS-service op te geven en verzendt het object omlaag in de pijplijn. Select-Object gebruikt de parameter Eigenschap om de status van de BITS-service weer te geven.

Voorbeeld 3: De beschrijving van een service wijzigen

In dit voorbeeld wordt de beschrijving van de BITS-service gewijzigd en wordt het resultaat weergegeven.

De Get-CimInstance cmdlet wordt gebruikt omdat deze een Win32_Service-object retourneert dat de beschrijving van de service bevat.

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 verzendt het object in de pijplijn naar Format-List en geeft de naam en beschrijving van de service weer. Ter vergelijking wordt de opdracht uitgevoerd voor en nadat de beschrijving is bijgewerkt.

Set-Service gebruikt de parameter Name om de BITS-service op te geven. De parameter Beschrijving geeft de bijgewerkte tekst voor de beschrijving van de services op.

Voorbeeld 4: Een service starten

In dit voorbeeld wordt een service gestart.

Set-Service -Name WinRM -Status Running -PassThru

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

Set-Servicegebruikt de parameter Name om de service, WinRM, op te geven. De parameter Status gebruikt de waarde Die wordt uitgevoerd om de service te starten. De parameter PassThru voert een ServiceController-object uit dat de resultaten weergeeft.

Voorbeeld 5: Een service onderbreken

In dit voorbeeld wordt de pijplijn gebruikt om de service te onderbreken.

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

Get-Service gebruikt de parameter Name om de Schedule-service op te geven en verzendt het object omlaag in de pijplijn. Set-Service gebruikt de parameter Status om de service in te stellen op Onderbroken.

Voorbeeld 6: Een service stoppen

In dit voorbeeld wordt een variabele gebruikt om een service te stoppen.

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

Get-Servicegebruikt de parameter Name om de service, Schedule, op te geven. Het object wordt opgeslagen in de variabele. $S Set-Service gebruikt de parameter InputObject en geeft het object op dat is opgeslagen $S. Met de parameter Status wordt de service ingesteld op Gestopt.

Voorbeeld 7: Een service stoppen op een extern systeem

In dit voorbeeld wordt een service op een externe computer gestopt. Zie Invoke-Command voor meer informatie.

$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 vraagt om een gebruikersnaam en wachtwoord en slaat de referenties op in de $Cred variabele. Get-Service gebruikt de parameter Name om de Schedule-service op te geven. Het object wordt opgeslagen in de variabele. $S

Invoke-Command gebruikt de parameter ComputerName om een externe computer op te geven. De referentieparameter gebruikt de $Cred variabele om u aan te melden bij de computer. De ScriptBlock-aanroepenSet-Service. De parameter InputObject geeft het serviceobject op dat is opgeslagen $S. Met de parameter Status wordt de service ingesteld op Gestopt.

Voorbeeld 8: Referenties van een service wijzigen

In dit voorbeeld worden de referenties gewijzigd die worden gebruikt voor het beheren van een service.

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

Get-Credential vraagt om een gebruikersnaam en wachtwoord en slaat de referenties op in de $credential variabele. Set-Service gebruikt de parameter Name om de Schedule-service op te geven. De referentieparameter maakt gebruik van de $credential variabele en werkt de Schedule-service bij.

Voorbeeld 9: De SecurityDescriptor van een service wijzigen

In dit voorbeeld wordt de SecurityDescriptor van een service gewijzigd.

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

De SecurityDescriptor wordt opgeslagen in de $SDDL variabele. Set-Service gebruikt de parameter Name om de BITS-service op te geven. De parameter SecurityDescriptorSddl gebruikt $SDDL om de SecurityDescriptor voor de BITS-service te wijzigen.

Voorbeeld 10: Het opstarttype instellen voor meerdere services

De Set-Service cmdlet accepteert slechts één servicenaam tegelijk. U kunt echter meerdere services doorsluisen om Set-Service de configuratie van meerdere services te wijzigen.

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

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

Parameters

-Confirm

Vraagt u om bevestiging voordat u wordt uitgevoerd Set-Service.

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Hiermee geeft u het account op dat door de service wordt gebruikt als het serviceaanmeldingsaccount.

Typ een gebruikersnaam, zoals User01 of Domain01\User01, of voer een PSCredential-object in, zoals een object dat is gegenereerd door de Get-Credential cmdlet. Als u een gebruikersnaam typt, wordt u door deze cmdlet gevraagd om een wachtwoord.

Referenties worden opgeslagen in een PSCredential-object en het wachtwoord wordt opgeslagen als SecureString.

Notitie

Zie Hoe veilig is SecureString SecureString?voor meer informatie over SecureString-gegevensbeveiliging.

Deze parameter is geïntroduceerd in PowerShell 6.0.

Type:PSCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Description

Hiermee geeft u een nieuwe beschrijving voor de service.

De servicebeschrijving wordt weergegeven in Computerbeheer, Services. De beschrijving is geen eigenschap van het Get-ServiceServiceController-object . Als u de beschrijving van de service wilt zien, gebruikt Get-CimInstance u die een Win32_Service-object retourneert dat de service vertegenwoordigt.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

Hiermee geeft u een nieuwe weergavenaam voor de service op.

Notitie

Set-Service Normaal gesproken werkt alleen op Windows-services en niet op stuurprogramma's. Als u echter de naam van een stuurprogramma opgeeft, Set-Service kunt u zich richten op het stuurprogramma.

Type:String
Aliases:DN
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Hiermee geeft u de stopmodus van de service. Deze parameter werkt alleen wanneer -Status Stopped deze wordt gebruikt. Als deze optie is ingeschakeld, Set-Service stopt u de afhankelijke services voordat de doelservice wordt gestopt. Standaard worden uitzonderingen gegenereerd wanneer andere actieve services afhankelijk zijn van de doelservice.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Hiermee geeft u een ServiceController-object op dat de service vertegenwoordigt die moet worden gewijzigd. Voer een variabele in die het object bevat of typ een opdracht of expressie waarmee het object wordt opgehaald, zoals een Get-Service opdracht. U kunt de pijplijn gebruiken om een serviceobject naar te Set-Serviceverzenden.

Type:ServiceController
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Hiermee geeft u de servicenaam van de service die moet worden gewijzigd. Jokertekens zijn niet toegestaan. U kunt de pijplijn gebruiken om een servicenaam naar te Set-Serviceverzenden.

Notitie

Set-Service Normaal gesproken werkt alleen op Windows-services en niet op stuurprogramma's. Als u echter de naam van een stuurprogramma opgeeft, Set-Service kunt u zich richten op het stuurprogramma.

Type:String
Aliases:ServiceName, SN
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-PassThru

Hiermee wordt een ServiceController-object geretourneerd dat de services vertegenwoordigt die zijn gewijzigd. Set-Service Standaard wordt er geen uitvoer gegenereerd.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SecurityDescriptorSddl

Hiermee geeft u de SecurityDescriptor voor de service in Sddl-indeling . Het account dat met deze parameter aanroept Set-Service , moet de WRITE_DAC- en WRITE_OWNER machtigingen hebben. Zie Beveiliging en toegangsrechten voor services voor meer informatie.

Type:String
Aliases:sd
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartupType

Hiermee geeft u de startmodus van de service.

De acceptabele waarden voor deze parameter zijn als volgt:

  • Automatisch : de service wordt gestart of gestart door het besturingssysteem, bij het opstarten van het systeem. Als een automatisch gestarte service afhankelijk is van een handmatig gestarte service, wordt de handmatig gestarte service ook automatisch gestart bij het opstarten van het systeem.
  • AutomaticDelayedStart - Wordt kort na het opstarten van het systeem gestart.
  • Uitgeschakeld : de service is uitgeschakeld en kan niet worden gestart door een gebruiker of toepassing.
  • InvalidValue : heeft geen effect. De cmdlet retourneert geen fout, maar het StartupType van de service wordt niet gewijzigd.
  • Handmatig : de service wordt alleen handmatig gestart door een gebruiker, met behulp van Service Control Manager of door een toepassing.
Type:Microsoft.PowerShell.Commands.ServiceStartupType
Aliases:StartMode, SM, ST, StartType
Accepted values:Automatic, AutomaticDelayedStart, Disabled, InvalidValue, Manual
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Status

Hiermee geeft u de status voor de service.

De acceptabele waarden voor deze parameter zijn als volgt:

  • Onderbroken. Onderbreekt de service.
  • Running. Start de service.
  • Stopped. Stopt de service.
Type:String
Accepted values:Paused, Running, Stopped
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Toont wat er zou gebeuren als Set-Service er wordt uitgevoerd. De cmdlet wordt niet uitgevoerd.

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Invoerwaarden

ServiceController

U kunt een serviceobject doorsluisen naar deze cmdlet.

String

U kunt een tekenreeks met een servicenaam doorsluisen naar deze cmdlet.

Uitvoerwaarden

None

Deze cmdlet retourneert standaard geen uitvoer.

ServiceController

Wanneer u de parameter PassThru gebruikt, retourneert deze cmdlet een ServiceController-object .

Notities

Deze cmdlet is alleen beschikbaar op Windows-platforms.

Set-Service vereist verhoogde machtigingen. Gebruik de optie Als administrator uitvoeren.

Set-Service kan alleen services beheren wanneer de huidige gebruiker machtigingen heeft voor het beheren van services. Als een opdracht niet goed werkt, hebt u mogelijk niet de vereiste machtigingen.

Als u de servicenaam of weergavenaam van een service wilt zoeken, gebruikt u Get-Service. De servicenamen bevinden zich in de kolom Naam en de weergavenamen bevinden zich in de kolom DisplayName .