Restart-Computer

Reinicia el sistema operativo en equipos locales y remotos.

Syntax

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

Description

Este cmdlet solo está disponible en la plataforma Windows.

El Restart-Computer cmdlet reinicia el sistema operativo en los equipos locales y remotos.

Puede usar los parámetros de Restart-Computer para ejecutar las operaciones de reinicio, para especificar los niveles de autenticación y las credenciales alternativas, limitar las operaciones que se ejecutan al mismo tiempo y forzar un reinicio inmediato.

A partir de Windows PowerShell 3.0, puede esperar a que se complete el reinicio antes de ejecutar el siguiente comando. Especifique un tiempo de espera y un intervalo de consulta y espere a que determinados servicios estén disponibles en el equipo reiniciado. Esta característica facilita el uso Restart-Computer en scripts y funciones.

Ejemplos

Ejemplo 1: Reiniciar el equipo local

Restart-Computer reinicia el equipo local.

Restart-Computer

Ejemplo 2: Reinicio de varios equipos

Restart-Computer puede reiniciar equipos remotos y locales. El parámetro ComputerName acepta una matriz de nombres de equipo.

Restart-Computer -ComputerName Server01, Server02, localhost

Ejemplo 3: Obtener nombres de equipo de un archivo de texto

Restart-Computer obtiene una lista de nombres de equipo de un archivo de texto y reinicia los equipos. No se especifica el parámetro ComputerName . Pero dado que es el primer parámetro de posición, acepta los nombres de equipo del archivo de texto que se envían a la canalización.

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

Get-Content usa el parámetro Path para obtener una lista de nombres de equipo de un archivo de texto, Domain01.txt. Los nombres de equipo se envían a la canalización. Restart-Computer reinicia cada equipo.

Ejemplo 4: Forzar el reinicio de equipos enumerados en un archivo de texto

En este ejemplo se fuerza un reinicio inmediato de los equipos enumerados en el Domain01.txt archivo. Los nombres de equipo del archivo de texto se almacenan en una variable. El parámetro Force fuerza un reinicio inmediato.

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

Get-Content usa el parámetro Path para obtener una lista de nombres de equipo de un archivo de texto, Domain01.txt. Los nombres de equipo se almacenan en la variable $Names. Get-Credential le pide un nombre de usuario y una contraseña y almacena los valores en la variable $Creds. Restart-Computer usa los parámetros ComputerName y Credential con sus variables. El parámetro Force provoca un reinicio inmediato de cada equipo.

Ejemplo 6: Reinicio de un equipo remoto y espera a PowerShell

Restart-Computer reinicia el equipo remoto y, a continuación, espera hasta 5 minutos (300 segundos) para que PowerShell esté disponible en el equipo reiniciado antes de continuar.

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

Restart-Computer usa el parámetro ComputerName para especificar Server01. El parámetro Wait espera a que finalice el reinicio. For especifica que PowerShell puede ejecutar comandos en el equipo remoto. El parámetro Timeout especifica una espera de cinco minutos. El parámetro Delay consulta el equipo remoto cada dos segundos para determinar si se reinicia.

Ejemplo 7: Reinicio de un equipo mediante WsmanAuthentication

Restart-Computer reinicia el equipo remoto mediante el mecanismo WsmanAuthentication . La autenticación Kerberos determina si el usuario actual tiene permiso para reiniciar el equipo remoto. Para obtener más información, consulte AuthenticationMechanism.

Restart-Computer -ComputerName Server01 -WsmanAuthentication Kerberos

Restart-Computerusa el parámetro ComputerName para especificar el equipo remoto Server01. El parámetro WsmanAuthentication especifica el método de autenticación como Kerberos.

Parámetros

-ComputerName

Especifica un nombre de equipo o una matriz separada por comas de nombres de equipo. Restart-Computeracepta objetos ComputerName de la canalización o variables.

Escriba el nombre NetBIOS, una dirección IP o un nombre de dominio completo de un equipo remoto. Para especificar el equipo local, escriba el nombre del equipo, un punto .o localhost.

Este parámetro no se basa en la comunicación remota de PowerShell. Puede usar el parámetro ComputerName incluso si el equipo no está configurado para ejecutar comandos remotos.

Si no se especifica el parámetro ComputerName , Restart-Computer reinicia el equipo local.

Type:String[]
Aliases:CN, __SERVER, Server, IPAddress
Position:0
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Confirm

Le pide confirmación antes de ejecutar Restart-Computer.

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

-Credential

Especifica una cuenta de usuario que tiene permiso para realizar esta acción. El valor predeterminado es el usuario actual.

Escriba un nombre de usuario, como User01 o Domain01\User01, o escriba un objeto PSCredential generado por el Get-Credential cmdlet . Si escribe un nombre de usuario, se le pedirá que escriba la contraseña.

Las credenciales se almacenan en un objeto PSCredential y la contraseña se almacena como SecureString.

Nota:

Para obtener más información sobre la protección de datos SecureString , consulte ¿Cómo es secure is SecureString?.

Type:PSCredential
Position:1
Default value:Current user
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Delay

Especifica la frecuencia de las consultas, en segundos. PowerShell consulta el servicio especificado por el parámetro For para determinar si el servicio está disponible después de reiniciar el equipo.

Este parámetro solo es válido junto con los parámetros Wait y For .

Este parámetro se incorporó en Windows PowerShell 3.0.

Si no se especifica el parámetro Delay , Restart-Computer usa un retraso de cinco segundos.

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

-For

Especifica el comportamiento de PowerShell a medida que espera a que el servicio o la característica especificados estén disponibles después de reiniciar el equipo. Este parámetro solo es válido con el parámetro Wait .

Los valores permitidos para este parámetro son los siguientes:

  • Valor predeterminado: espera a que PowerShell se reinicie.
  • PowerShell: puede ejecutar comandos en una sesión remota de PowerShell en el equipo.
  • WMI: recibe una respuesta a una consulta de Win32_ComputerSystem para el equipo.
  • WinRM: puede establecer una sesión remota en el equipo mediante WS-Management.

Este parámetro se incorporó en Windows PowerShell 3.0.

Type:WaitForServiceTypes
Accepted values:Wmi, WinRM, PowerShell
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Force

Fuerza un reinicio inmediato del equipo.

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

-Timeout

Especifica el tiempo de espera, en segundos. Cuando transcurre el tiempo de espera, Restart-Computer vuelve al símbolo del sistema, incluso si los equipos no se reinician.

El parámetro Timeout solo es válido con el parámetro Wait . El tiempo de espera invalida el período de espera indefinido del parámetro Wait .

Este parámetro se incorporó en Windows PowerShell 3.0.

Type:Int32
Aliases:TimeoutSec
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Wait

Restart-Computer suprime el símbolo del sistema de PowerShell y bloquea la canalización hasta que se hayan reiniciado los equipos. Puede usar este parámetro en un script para reiniciar equipos y, a continuación, continuar procesando cuando finalice el reinicio.

El parámetro Wait espera indefinidamente para que los equipos se reinicien. Puede usar Timeout para ajustar el tiempo de espera y los parámetros For y Delay para esperar a que determinados servicios estén disponibles en los equipos reiniciados.

El parámetro Wait no es válido cuando se reinicia el equipo local. Si el valor del parámetro ComputerName contiene los nombres de los equipos remotos y el equipo local, Restart-Computer genera un error de no terminación para Esperar en el equipo local, pero espera a que los equipos remotos se reinicien.

Este parámetro se incorporó en Windows PowerShell 3.0.

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

-WhatIf

Muestra lo que sucedería si se Restart-Computer ejecuta. El Restart-Computer cmdlet no se ejecuta.

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

-WsmanAuthentication

Especifica el mecanismo que se usa para autenticar las credenciales de usuario. Este parámetro se incorporó en Windows PowerShell 3.0.

Los valores aceptables para este parámetro son: Basic, CredSSP, Default, Digest, Kerberos y Negotiate.

Para obtener más información, consulte AuthenticationMechanism.

Advertencia

La autenticación del proveedor de servicios de seguridad de credenciales (CredSSP), en la que las credenciales de usuario se pasan a un equipo remoto para autenticarse, está diseñada para comandos que requieren autenticación en más de un recurso, como el acceso a un recurso compartido de red remoto. Este mecanismo el riesgo de seguridad de la operación remota. Si el equipo remoto se ve comprometido, las credenciales que se pasen a él se pueden utilizar para controlar la sesión de red.

Type:String
Accepted values:Basic, CredSSP, Default, Digest, Kerberos, Negotiate
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Entradas

String

Puede canalizar una cadena que contenga un nombre de equipo a este cmdlet.

Salidas

None

Este cmdlet no devuelve ningún resultado.

Notas

  • En Windows, Restart-Computer usa el método Win32Shutdown de la clase instrumental de administración de Windows (WMI) Win32_OperatingSystem . Este método requiere que el privilegio SeShutdownPrivilege esté habilitado para la cuenta de usuario que se usa para reiniciar la máquina.
  • En Linux y Mac OS, Restart-Computer usa la /sbin/shutdown herramienta bash.