Delen via


Restart-Computer

Start het besturingssysteem opnieuw op lokale en externe computers.

Syntaxis

Restart-Computer
       [-WsmanAuthentication <String>]
       [[-ComputerName] <String[]>]
       [[-Credential]<PSCredential>]
       [-Force]
       [-Wait]
       [-Timeout <Int32>]
       [-For <WaitForServiceTypes>]
       [-Delay <Int16>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

Deze cmdlet is alleen beschikbaar op het Windows-platform.

De Restart-Computer cmdlet start het besturingssysteem opnieuw op de lokale en externe computers.

U kunt de parameters van Restart-Computer gebruiken om de herstartbewerkingen uit te voeren, om de verificatieniveaus en alternatieve referenties op te geven, de bewerkingen te beperken die tegelijkertijd worden uitgevoerd en om een onmiddellijke herstart af te dwingen.

Vanaf Windows PowerShell 3.0 kunt u wachten tot het opnieuw opstarten is voltooid voordat u de volgende opdracht uitvoert. Geef een time-out en queryinterval op en wacht tot bepaalde services beschikbaar zijn op de computer die opnieuw is opgestart. Met deze functie kunt u Restart-Computer gebruiken in scripts en functies.

Voorbeelden

Voorbeeld 1: De lokale computer opnieuw opstarten

Restart-Computer de lokale computer opnieuw opstart.

Restart-Computer

Voorbeeld 2: Meerdere computers opnieuw opstarten

Restart-Computer kan externe en lokale computers opnieuw opstarten. De parameter ComputerName accepteert een matrix met computernamen.

Restart-Computer -ComputerName Server01, Server02, localhost

Voorbeeld 3: Computernamen ophalen uit een tekstbestand

Restart-Computer een lijst met computernamen ophaalt uit een tekstbestand en de computers opnieuw opstart. De parameter ComputerName is niet opgegeven. Maar omdat het de eerste positieparameter is, accepteert het de computernamen uit het tekstbestand dat door de pijplijn wordt verzonden.

Get-Content -Path C:\Domain01.txt | Restart-Computer

Get-Content gebruikt de parameter Path om een lijst met computernamen op te halen uit een tekstbestand, Domain01.txt. De computernamen worden via de pijplijn verzonden. Restart-Computer start iedere computer opnieuw op.

Voorbeeld 4: Het gedwongen opnieuw opstarten van computers die in een tekstbestand worden vermeld.

Dit voorbeeld dwingt een onmiddellijke herstart van de computers die in het bestand Domain01.txt staan. De computernamen uit het tekstbestand worden opgeslagen in een variabele. De parameter Forceren dwingt een onmiddellijke herstart af.

$Names = Get-Content -Path C:\Domain01.txt
$Creds = Get-Credential
Restart-Computer -ComputerName $Names -Credential $Creds -Force

Get-Content gebruikt de parameter Path om een lijst met computernamen op te halen uit een tekstbestand, Domain01.txt. De computernamen worden opgeslagen in de variabele $Names. Get-Credential vraagt om een gebruikersnaam en wachtwoord en slaat de waarden op in de variabele $Creds. Restart-Computer gebruikt de parameters ComputerName en Credential met hun variabelen. De parameter Forceren veroorzaakt een onmiddellijke herstart van elke computer.

Voorbeeld 6: Een externe computer opnieuw opstarten en wachten op PowerShell

Restart-Computer de externe computer opnieuw opstart en wacht tot 5 minuten (300 seconden) voordat PowerShell beschikbaar is op de opnieuw opgestarte computer voordat deze doorgaat.

Restart-Computer -ComputerName Server01 -Wait -For PowerShell -Timeout 300 -Delay 2

Restart-Computer gebruikt de parameter ComputerName om Server01-op te geven. De parameter Wait wacht totdat het opnieuw opstarten is voltooid. De Voor geeft aan dat PowerShell opdrachten kan uitvoeren op de externe computer. De parameter Time-out geeft een wachttijd van vijf minuten op. De parameter Delay voert elke twee seconden een query uit op de externe computer om te bepalen of deze opnieuw wordt gestart.

Voorbeeld 7: Een computer opnieuw opstarten met WsmanAuthentication

Restart-Computer herstart de externe computer met het WsmanAuthentication mechanisme. Kerberos-verificatie bepaalt of de huidige gebruiker gemachtigd is om de externe computer opnieuw op te starten. Zie AuthenticationMechanismvoor meer informatie.

Restart-Computer -ComputerName Server01 -WsmanAuthentication Kerberos

Restart-Computer gebruikt de parameter ComputerName om de externe computer op te geven, Server01-. De parameter WsmanAuthentication geeft de verificatiemethode op als Kerberos-.

Parameters

-ComputerName

Hiermee geeft u één computernaam of een door komma's gescheiden matrix met computernamen op. Restart-Computer accepteert ComputerName objecten uit de pijplijn of variabelen.

Typ de NetBIOS-naam, een IP-adres of een volledig gekwalificeerde domeinnaam van een externe computer. Als u de lokale computer wilt opgeven, typt u de computernaam, een punt .of localhost.

Deze parameter is niet afhankelijk van PowerShell-remotegebruik. U kunt de parameter ComputerName gebruiken, zelfs als uw computer niet is geconfigureerd voor het uitvoeren van externe opdrachten.

Als de parameter ComputerName niet is opgegeven, Restart-Computer de lokale computer opnieuw opstart.

Type:String[]
Aliassen:CN, __SERVER, Server, IPAddress
Position:0
Default value:None
Vereist:False
Pijplijninvoer accepteren:True
Jokertekens accepteren:False

-Confirm

Vraagt u om bevestiging voordat u Restart-Computeruitvoert.

Type:SwitchParameter
Aliassen:cf
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Credential

Hiermee geeft u een gebruikersaccount op dat gemachtigd is om deze actie uit te voeren. De standaardwaarde is de huidige gebruiker.

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

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

Notitie

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

Type:PSCredential
Position:1
Default value:Current user
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Delay

Hiermee geeft u de frequentie van query's, in seconden. PowerShell voert een query uit op de service die is opgegeven door de parameter Voor om te bepalen of de service beschikbaar is nadat de computer opnieuw is opgestart.

Deze parameter is alleen geldig in combinatie met de parameters Wait en For.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Als de parameter Delay niet is opgegeven, gebruikt Restart-Computer een vertraging van vijf seconden.

Type:Int16
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-For

Hiermee geeft u het gedrag van PowerShell op terwijl wordt gewacht tot de opgegeven service of functie beschikbaar is nadat de computer opnieuw is opgestart. Deze parameter is alleen geldig met de parameter Wait.

De acceptabele waarden voor deze parameter zijn:

  • standaard: Wacht tot PowerShell opnieuw is opgestart.
  • PowerShell-: opdrachten kunnen worden uitgevoerd in een externe PowerShell-sessie op de computer.
  • WMI-: ontvangt een antwoord op een Win32_ComputerSystem-query voor de computer.
  • WinRM-: kan een externe sessie tot stand brengen op de computer met behulp van WS-Management.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:WaitForServiceTypes
Geaccepteerde waarden:Wmi, WinRM, PowerShell
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Force

Dwingt een onmiddellijke herstart van de computer af.

Type:SwitchParameter
Aliassen:f
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Timeout

Hiermee geeft u de duur van de wachttijd, in seconden. Wanneer de time-out is verstreken, keert Restart-Computer terug naar de opdrachtprompt, zelfs als de computers niet opnieuw worden opgestart.

De parameter Time-out is alleen geldig met de parameter Wait. Timeout overschrijdt de onbeperkte wachttijd van de parameter Wait.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:Int32
Aliassen:TimeoutSec
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-Wait

Restart-Computer onderdrukt de PowerShell-prompt en blokkeert de pijplijn totdat de computers opnieuw zijn opgestart. U kunt deze parameter in een script gebruiken om computers opnieuw op te starten en vervolgens door te gaan wanneer het opnieuw opstarten is voltooid.

De parameter Wait wacht voor onbepaalde tijd totdat de computers opnieuw worden opgestart. U kunt Time-out- gebruiken om de tijdsinstellingen en de Voor en Vertraging parameters om te wachten tot bepaalde services beschikbaar zijn op de opnieuw opgestarte computers.

De parameter Wait is niet geldig wanneer u de lokale computer opnieuw opstart. Als de waarde van de parameter ComputerName de namen van externe computers en de lokale computer bevat, genereert Restart-Computer een niet-afsluitfout voor Wacht op de lokale computer, maar wacht tot de externe computers opnieuw worden opgestart.

Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

Type:SwitchParameter
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WhatIf

Laat zien wat er gebeurt als de Restart-Computer wordt uitgevoerd. De cmdlet Restart-Computer wordt niet uitgevoerd.

Type:SwitchParameter
Aliassen:wi
Position:Named
Default value:False
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

-WsmanAuthentication

Hiermee geeft u het mechanisme op dat wordt gebruikt om de gebruikersreferenties te verifiëren. Deze parameter is geïntroduceerd in Windows PowerShell 3.0.

De acceptabele waarden voor deze parameter zijn: Basic, CredSSP, Default, Digest, Kerberosen Negotiate.

Zie AuthenticationMechanismvoor meer informatie.

Waarschuwing

CredSSP-verificatie (Credential Security Service Provider), waarbij de gebruikersreferenties worden doorgegeven aan een externe computer die moet worden geverifieerd, is ontworpen voor opdrachten waarvoor verificatie is vereist voor meer dan één resource, zoals toegang tot een externe netwerkshare. Dit mechanisme verhoogt het beveiligingsrisico van de externe bewerking. Als de externe computer is aangetast, kunnen de referenties die aan de computer worden doorgegeven, worden gebruikt om de netwerksessie te beheren.

Type:String
Geaccepteerde waarden:Basic, CredSSP, Default, Digest, Kerberos, Negotiate
Position:Named
Default value:None
Vereist:False
Pijplijninvoer accepteren:False
Jokertekens accepteren:False

Invoerwaarden

String

U kunt een tekenreeks met een computernaam naar deze cmdlet doorsturen.

Uitvoerwaarden

None

Deze cmdlet retourneert geen uitvoer.

Notities

  • In Windows gebruikt Restart-Computer de Win32Shutdown-methode van de WMI-Win32_OperatingSystem klasse (Windows Management Instrumentation). Voor deze methode moet de SeShutdownPrivilege--bevoegdheid zijn ingeschakeld voor het gebruikersaccount dat wordt gebruikt om de computer opnieuw op te starten.
  • In Linux en macOS gebruikt Restart-Computer het /sbin/shutdown bash-hulpprogramma.