Restart-Computer

Перезапуск операционной системы на локальных и удаленных компьютерах.

Синтаксис

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

Описание

Этот командлет доступен только на платформе Windows.

Командлет Restart-Computer перезапускает операционную систему на локальном и удаленном компьютерах.

Параметры можно использовать для запуска операций перезапуска Restart-Computer , указания уровней проверки подлинности и альтернативных учетных данных, ограничения операций, которые выполняются одновременно, и принудительного немедленного перезапуска.

Начиная с Windows PowerShell 3.0, вы можете дождаться завершения перезагрузки перед выполнением следующей команды. Укажите время ожидания и интервал запроса, а также дождитесь доступности определенных служб на перезапущенном компьютере. Эта функция делает ее удобной для использования Restart-Computer в скриптах и функциях.

Примеры

Пример 1. Перезагрузка локального компьютера

Restart-Computer перезапускает локальный компьютер.

Restart-Computer

Пример 2. Перезагрузка нескольких компьютеров

Restart-Computer может перезапустить удаленные и локальные компьютеры. Параметр ComputerName принимает массив имен компьютеров.

Restart-Computer -ComputerName Server01, Server02, localhost

Пример 3. Получение имен компьютеров из текстового файла

Restart-Computer получает список имен компьютеров из текстового файла и перезапускает компьютеры. Параметр ComputerName не указан. Но так как это первый параметр position, он принимает имена компьютеров из текстового файла, которые отправляются по конвейеру.

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

Get-Content использует параметр Path для получения списка имен компьютеров из текстового файла ,Domain01.txt. Имена компьютеров отправляются по конвейеру. Restart-Computer перезагружает каждый компьютер.

Пример 4. Принудительная перезагрузка компьютеров, перечисленных в текстовом файле

В этом примере выполняется немедленная перезагрузка компьютеров, перечисленных Domain01.txt в файле . Имена компьютеров из текстового файла хранятся в переменной. Параметр Force выполняет немедленный перезапуск.

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

Get-Content использует параметр Path для получения списка имен компьютеров из текстового файла ,Domain01.txt. Имена компьютеров хранятся в переменной $Names. Get-Credential Запрашивает имя пользователя и пароль и сохраняет значения в переменной $Creds. Restart-Computer использует параметры ComputerName и Credential со своими переменными. Параметр Force вызывает немедленную перезагрузку каждого компьютера.

Пример 6. Перезагрузка удаленного компьютера и ожидание PowerShell

Restart-Computer перезагружает удаленный компьютер, а затем ожидает до 5 минут (300 секунд), пока PowerShell не станет доступным на перезапущенном компьютере, прежде чем продолжить работу.

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

Restart-Computer использует параметр ComputerName для указания Server01. Параметр Wait ожидает завершения перезапуска. Параметр For указывает, что PowerShell может выполнять команды на удаленном компьютере. Параметр Timeout задает пятиминутное ожидание. Параметр Delay каждые две секунды запрашивает удаленный компьютер, чтобы определить, перезагружается ли он.

Пример 7. Перезагрузка компьютера с помощью WsmanAuthentication

Restart-Computer перезапускает удаленный компьютер с помощью механизма WsmanAuthentication . Проверка подлинности Kerberos определяет, имеет ли текущий пользователь разрешение на перезагрузку удаленного компьютера. Дополнительные сведения см. в разделе AuthenticationMechanism.

Restart-Computer -ComputerName Server01 -WsmanAuthentication Kerberos

Restart-Computer использует параметр ComputerName , чтобы указать удаленный компьютер Server01. Параметр WsmanAuthentication указывает метод проверки подлинности kerberos.

Параметры

-ComputerName

Указывает одно имя компьютера или массив имен компьютеров с разделителями-запятыми. Restart-Computer принимает объекты ComputerName из конвейера или переменных.

Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компьютера. Чтобы указать локальный компьютер, введите имя компьютера, точку .или localhost.

Этот параметр не зависит от удаленного взаимодействия PowerShell. Параметр ComputerName можно использовать, даже если компьютер не настроен для выполнения удаленных команд.

Если параметр ComputerName не указан, Restart-Computer перезагружает локальный компьютер.

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

-Confirm

Запрашивает подтверждение перед запуском Restart-Computer.

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

-Credential

Указывает учетную запись пользователя, у которого есть разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.

Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential , созданный командлетом Get-Credential . Если вы введете имя пользователя, вам будет предложено ввести пароль.

Учетные данные хранятся в объекте PSCredential , а пароль хранится как SecureString.

Примечание

Дополнительные сведения о защите данных SecureString см. в разделе Насколько безопасно SecureString?.

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

-Delay

Указывает частоту запросов в секундах. PowerShell запрашивает службу, указанную параметром For , чтобы определить, доступна ли служба после перезагрузки компьютера.

Этот параметр действителен только вместе с параметрами Wait и For .

Этот параметр впервые появился в Windows PowerShell 3.0.

Если параметр Delay не указан, Restart-Computer использует пятисекундную задержку.

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

-For

Указывает поведение PowerShell, так как она ожидает, пока указанная служба или компонент станет доступной после перезагрузки компьютера. Этот параметр действителен только с параметром Wait .

Допустимые значения для этого параметра:

  • По умолчанию: ожидает перезапуска PowerShell.
  • PowerShell: может выполнять команды в удаленном сеансе PowerShell на компьютере.
  • WMI: получает ответ на запрос Win32_ComputerSystem для компьютера.
  • WinRM: может установить удаленный сеанс для компьютера с помощью WS-Management.

Этот параметр впервые появился в Windows PowerShell 3.0.

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

-Force

Принудительно выполняет немедленную перезагрузку компьютера.

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

-Timeout

Указывает время ожидания в секундах. По истечении времени ожидания Restart-Computer возвращается в командную строку, даже если компьютеры не перезагружены.

Параметр Timeout действителен только с параметром Wait . Время ожидания переопределяет неопределенный период ожидания параметра Wait .

Этот параметр впервые появился в Windows PowerShell 3.0.

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

-Wait

Restart-Computer подавляет запрос PowerShell и блокирует конвейер до перезагрузки компьютеров. Этот параметр можно использовать в скрипте, чтобы перезагрузить компьютеры, а затем продолжить обработку после завершения перезагрузки.

Параметр Wait ожидает неограниченное время перезагрузки компьютеров. Время ожидания можно использовать для настройки времени и параметров For и Delay , чтобы дождаться, пока определенные службы станут доступны на перезапущенных компьютерах.

Параметр Wait недействителен при перезагрузке локального компьютера. Если значение параметра ComputerName содержит имена удаленных компьютеров и локального компьютера, Restart-Computer создает неустранимую ошибку для параметра Ожидание на локальном компьютере, но ожидает перезагрузки удаленных компьютеров.

Этот параметр впервые появился в Windows PowerShell 3.0.

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

-WhatIf

Показывает, что произойдет при выполнении Restart-Computer . Командлет Restart-Computer не выполняется.

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

-WsmanAuthentication

Указывает механизм, используемый для проверки подлинности учетных данных пользователя. Этот параметр впервые появился в Windows PowerShell 3.0.

Допустимые значения для этого параметра: Basic, CredSSP, Default, Digest, Kerberos и Negotiate.

Дополнительные сведения см. в разделе AuthenticationMechanism.

Предупреждение

Проверка подлинности поставщика службы безопасности учетных данных (CredSSP), при которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности в нескольких ресурсах, таких как доступ к удаленной сетевой папке. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, могут использоваться для управления сетевым сеансом.

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

Входные данные

String

В этот командлет можно передать строку, содержащую имя компьютера.

Выходные данные

None

Этот командлет не возвращает выходные данные.

Примечания

  • В Windows Restart-Computer использует метод Win32Shutdown класса Win32_OperatingSystem инструментария управления Windows (WMI). Для этого метода требуется включить привилегию SeShutdownPrivilege для учетной записи пользователя, используемой для перезапуска компьютера.
  • В Linux и Mac OS Restart-Computer использует /sbin/shutdown средство bash.