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 не указан. Но так как это первый параметр позиции, он принимает имена компьютеров из текстового файла, отправляемого по конвейеру.
Get-Content -Path C:\Domain01.txt | Restart-Computer
Get-Content
использует параметр пути для получения списка имен компьютеров из текстового файла 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
использует параметр пути для получения списка имен компьютеров из текстового файла Domain01.txt. Имена компьютеров хранятся в переменной $Names
.
Get-Credential
запрашивает имя пользователя и пароль и сохраняет значения в переменной $Creds
.
Restart-Computer
использует параметры ComputerName и credential со своими переменными. Параметр силы вызывает немедленный перезапуск каждого компьютера.
Пример 6. Перезагрузите удаленный компьютер и дождитесь PowerShell
Restart-Computer
перезагрузит удаленный компьютер, а затем ожидает до 5 минут (300 секунд), чтобы PowerShell стала доступной на перезагруженном компьютере, прежде чем продолжить работу.
Restart-Computer -ComputerName Server01 -Wait -For PowerShell -Timeout 300 -Delay 2
Restart-Computer
использует параметр ComputerName для указания Server01. Параметр Wait ожидает завершения перезагрузки.
Для указывает, что PowerShell может выполнять команды на удаленном компьютере. Параметр timeout указывает пятиминутное ожидание. Параметр Задержка запрашивает удаленный компьютер каждые две секунды, чтобы определить, перезапускается ли он.
Пример 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
перезагрузит локальный компьютер.
Тип: | String[] |
Aliases: | CN, __SERVER, Server, IPAddress |
Position: | 0 |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | True |
Принять подстановочные знаки: | False |
-Confirm
Запрашивает подтверждение перед запуском Restart-Computer
.
Тип: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, созданный командлетом Get-Credential
. Если ввести имя пользователя, вам будет предложено ввести пароль.
Учетные данные хранятся в объекте PSCredential, а пароль хранится в виде SecureString.
Заметка
Дополнительные сведения о защите данных SecureString см. в разделе Как безопасно SecureString?.
Тип: | PSCredential |
Position: | 1 |
Default value: | Current user |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Delay
Указывает частоту запросов в секундах. PowerShell запрашивает службу, указанную параметром For, чтобы определить, доступна ли служба после перезагрузки компьютера.
Этот параметр действителен только вместе с параметрами Wait и For.
Этот параметр появился в Windows PowerShell 3.0.
Если параметр задержки не указан, Restart-Computer
использует пять секунд задержки.
Тип: | Int16 |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-For
Указывает поведение PowerShell по мере ожидания доступности указанной службы или компонента после перезагрузки компьютера. Этот параметр действителен только с параметром Wait.
Допустимые значения для этого параметра:
- по умолчанию: ожидает, когда PowerShell перезапустится.
- PowerShell: может выполнять команды в удаленном сеансе PowerShell на компьютере.
- WMI: получает ответ на запрос Win32_ComputerSystem для компьютера.
- WinRM: может установить удаленный сеанс на компьютере с помощью WS-Management.
Этот параметр появился в Windows PowerShell 3.0.
Тип: | WaitForServiceTypes |
Допустимые значения: | Wmi, WinRM, PowerShell |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Force
Принудительно перезагрузит компьютер немедленно.
Тип: | SwitchParameter |
Aliases: | f |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Timeout
Указывает длительность ожидания в секундах. При истечении времени ожидания Restart-Computer
возвращается в командную строку, даже если компьютеры не перезагрузились.
Параметр тайм-аут действителен только с параметром Wait. Параметр Timeout переопределяет неопределенный период ожидания параметра Wait.
Этот параметр появился в Windows PowerShell 3.0.
Тип: | Int32 |
Aliases: | TimeoutSec |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-Wait
Restart-Computer
подавляет запрос PowerShell и блокирует конвейер до перезапуска компьютеров. Этот параметр можно использовать в скрипте для перезагрузки компьютеров, а затем продолжить обработку после завершения перезагрузки.
Параметр wait ожидает неопределённое время для перезагрузки компьютеров. Вы можете использовать тайм-аут для настройки времени и Для и параметры задержки, чтобы ждать, пока определенные службы будут доступны на перезагруженных компьютерах.
Параметр Ожидание недействителен при перезапуске локального компьютера. Если значение параметра ComputerName содержит имена удаленных компьютеров и локального компьютера, Restart-Computer
вызывает нефатальную ошибку для Wait на локальном компьютере, но ожидает, пока удаленные компьютеры перезапустятся.
Этот параметр появился в Windows PowerShell 3.0.
Тип: | SwitchParameter |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WhatIf
Показывает, что произойдет, если запустится Restart-Computer
. Командлет Restart-Computer
не выполняется.
Тип: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
-WsmanAuthentication
Указывает механизм, используемый для проверки подлинности учетных данных пользователя. Этот параметр появился в Windows PowerShell 3.0.
Допустимыми значениями этого параметра являются: базовый, CredSSP, по умолчанию, дайджест, Kerberosи согласование.
Дополнительные сведения см. в разделе AuthenticationMechanism.
Предупреждение
Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, можно использовать для управления сетевым сеансом.
Тип: | String |
Допустимые значения: | Basic, CredSSP, Default, Digest, Kerberos, Negotiate |
Position: | Named |
Default value: | None |
Обязательно: | False |
Принять входные данные конвейера: | False |
Принять подстановочные знаки: | False |
Входные данные
Можно передать строку, содержащую имя компьютера в этот командлет.
Выходные данные
None
Этот командлет не возвращает выходные данные.
Примечания
- В Windows
Restart-Computer
используется метод Win32Shutdown класса Windows Management Instrumentation (WMI) Win32_OperatingSystem. Этот метод требует включения привилегий SeShutdownPrivilege для учетной записи пользователя, используемой для перезапуска компьютера. - В Linux и macOS
Restart-Computer
использует средство/sbin/shutdown
bash.
Связанные ссылки
PowerShell