Restart-Computer
Перезапуск операционной системы на локальных и удаленных компьютерах.
Синтаксис
DefaultSet (По умолчанию)
Restart-Computer
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-DcomAuthentication <AuthenticationLevel>]
[-Impersonation <ImpersonationLevel>]
[-WsmanAuthentication <String>]
[-Protocol <String>]
[-Force]
[-Wait]
[-Timeout <Int32>]
[-For <WaitForServiceTypes>]
[-Delay <Int16>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
AsJobSet
Restart-Computer
[[-ComputerName] <String[]>]
[[-Credential] <PSCredential>]
[-AsJob]
[-DcomAuthentication <AuthenticationLevel>]
[-Impersonation <ImpersonationLevel>]
[-Force]
[-ThrottleLimit <Int32>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Описание
Командлет Restart-Computer перезапускает операционную систему на локальных и удаленных компьютерах.
Параметры Restart-Computer можно использовать для запуска операций перезапуска в качестве фонового задания, для указания уровней проверки подлинности и альтернативных учетных данных, для ограничения операций, выполняемых одновременно, и для принудительного немедленного перезапуска.
Начиная с Windows PowerShell 3.0, вы можете ждать завершения перезагрузки перед выполнением следующей команды. Укажите интервал ожидания ожидания и интервал запроса и дождитесь доступности определенных служб на перезагруженном компьютере. Эта функция позволяет использовать Restart-Computer в скриптах и функциях.
Для перезагрузки компьютера можно использовать протокол WS-Management (WSMan), если вызовы распределенной объектной модели компонентов (DCOM) блокируются, например брандмауэром предприятия. Дополнительные сведения см. в разделе WS-Management протокола.
Для этого командлета требуется удаленное взаимодействие Windows PowerShell, только если в команде используется параметр AsJob.
Примеры
Пример 1. Перезапуск локального компьютера
Restart-Computer перезапускает локальный компьютер.
Restart-Computer
Пример 2. Перезапуск нескольких компьютеров
Restart-Computer может перезапустить удаленные и локальные компьютеры. Параметр ComputerName принимает массив имен компьютеров.
Restart-Computer -ComputerName Server01, Server02, localhost
Пример 3. Перезапуск компьютеров в качестве фонового задания
Эти команды выполняют команду Restart-Computer в качестве фонового задания на двух удаленных компьютерах, а затем получите результаты.
Так как AsJob создает задание на локальном компьютере и автоматически возвращает результаты на локальный компьютер, вы можете запустить Receive-Job в качестве локальной команды.
$Job = Restart-Computer -ComputerName "Server01", "Server02" -AsJob
$Job | Receive-Job
$Job.
$Job отправляется по конвейеру командлету Receive-Job, который получает результаты.
Пример 4. Перезапуск удаленного компьютера
Restart-Computer перезапускает удаленный компьютер с настраиваемыми параметрами олицетворения и проверки подлинности.
Restart-Computer -ComputerName Server01 -Impersonation Anonymous -DcomAuthentication PacketIntegrity
Restart-Computer использует параметр ComputerName для указания Server01. Параметр олицетворения
Пример 5. Принудительное перезапуска компьютеров, перечисленных в текстовом файле
В этом примере выполняется немедленный перезапуск компьютеров, перечисленных в файле Domain01.txt. Имена компьютеров из текстового файла хранятся в переменной. Параметр force force
$Names = Get-Content -Path C:\Domain01.txt
$Creds = Get-Credential
Restart-Computer -ComputerName $Names -Credential $Creds -Force -ThrottleLimit 10
Get-Content использует параметр пути для получения списка имен компьютеров из текстового файла Domain01.txt. Имена компьютеров хранятся в переменной $Names.
Get-Credential запрашивает имя пользователя и пароль и сохраняет значения в переменной $Creds.
Restart-Computer использует параметры ComputerName и credential со своими переменными. Параметр силы вызывает немедленный перезапуск каждого компьютера. Параметр ThrottleLimit ограничивает команду до 10 одновременных подключений.
Пример 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. Перезапуск компьютера с помощью протокола WSMan
Restart-Computer перезапускает удаленный компьютер с помощью протокола WSMan вместо DCOM по умолчанию. Проверка подлинности Kerberos определяет, имеет ли текущий пользователь разрешение на перезапуск удаленного компьютера.
Эти параметры предназначены для предприятий, в которых перезапуск на основе DCOM завершается сбоем, так как DCOM заблокирован. Например, брандмауэром.
Restart-Computer -ComputerName Server01 -Protocol WSMan -WsmanAuthentication Kerberos
Restart-Computer использует параметр ComputerName для указания удаленного компьютера Server01.
Параметр протокола
Параметры
-AsJob
Указывает, что Restart-Computer выполняется в качестве фонового задания.
Чтобы использовать этот параметр, локальные и удаленные компьютеры должны быть настроены для удаленного взаимодействия. В Windows Vista и более поздних версиях операционной системы Windows необходимо открыть PowerShell с помощью параметра Запустить от имени администратора. Дополнительные сведения см. в about_Remote_Requirements.
При указании параметра asJob Receive-Job.
Дополнительные сведения о фоновых заданиях Windows PowerShell см. в about_Jobs и about_Remote_Jobs.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
AsJobSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ComputerName
Указывает одно имя компьютера или разделенный запятыми массив имен компьютеров.
Restart-Computer принимает объекты ComputerName из конвейера или переменных.
Введите имя NetBIOS, IP-адрес или полное доменное имя удаленного компьютера. Чтобы указать локальный компьютер, введите имя компьютера, точку .или localhost.
Этот параметр не зависит от удаленного управления PowerShell. Вы можете использовать параметр ComputerName, даже если компьютер не настроен для выполнения удаленных команд.
Если параметр ComputerName не указан, Restart-Computer перезагрузит локальный компьютер.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Китай, __СЕРВЕР, Сервер, IP-адрес |
Наборы параметров
(All)
| Position: | 0 |
| Обязательно: | False |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Confirm
Запрашивает подтверждение перед запуском Restart-Computer.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | cf |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Credential
Указывает учетную запись пользователя, которая имеет разрешение на выполнение этого действия. По умолчанию используется текущий пользователь.
Введите имя пользователя, например User01 или Domain01\User01, или введите объект PSCredential, созданный командлетом Get-Credential. Если ввести имя пользователя, вам будет предложено ввести пароль.
Учетные данные хранятся в объекте PSCredential, а пароль хранится в виде SecureString.
Замечание
Дополнительные сведения о защите данных SecureString см. в разделе Как безопасно SecureString?.
Свойства параметров
| Тип: | PSCredential |
| Default value: | Current user |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | 1 |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-DcomAuthentication
Указывает уровень проверки подлинности, используемый для подключения WMI.
Restart-Computer использует WMI.
Допустимые значения:
- вызов: проверка подлинности COM на уровне вызовов
- Connect: проверка подлинности COM на уровне подключения
- по умолчанию: проверка подлинности Windows
- Нет: нет проверки подлинности COM
- пакет: проверка подлинности COM на уровне пакетов.
- PacketIntegrity: проверка подлинности COM уровня целостности пакетов
- PacketPrivacy: проверка подлинности COM уровня конфиденциальности пакетов.
- без изменений: уровень проверки подлинности совпадает с предыдущей командой.
Дополнительные сведения см. в перечислении AuthenticationLevel.
Этот параметр представлен в Windows PowerShell 3.0.
Свойства параметров
| Тип: | AuthenticationLevel |
| Default value: | None |
| Допустимые значения: | Default, None, Connect, Call, Packet, PacketIntegrity, PacketPrivacy, Unchanged |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | Аутентификация |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Delay
Указывает частоту запросов в секундах. PowerShell запрашивает службу, указанную параметром For, чтобы определить, доступна ли служба после перезагрузки компьютера.
Этот параметр действителен только вместе с параметрами Wait и For.
Этот параметр появился в Windows PowerShell 3.0.
Если параметр задержки не указан, Restart-Computer использует пять секунд задержки.
Свойства параметров
| Тип: | Int16 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-For
Указывает поведение PowerShell по мере ожидания доступности указанной службы или компонента после перезагрузки компьютера. Этот параметр действителен только с параметром Wait.
Допустимые значения для этого параметра:
- по умолчанию: ожидает, когда PowerShell перезапустится.
- PowerShell: может выполнять команды в удаленном сеансе PowerShell на компьютере.
- WMI: получает ответ на запрос Win32_ComputerSystem компьютера.
- WinRM: может установить удаленный сеанс на компьютере с помощью WS-Management.
Этот параметр появился в Windows PowerShell 3.0.
Свойства параметров
| Тип: | WaitForServiceTypes |
| Default value: | None |
| Допустимые значения: | Wmi, WinRM, PowerShell |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Force
Принудительно перезагрузит компьютер немедленно.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | f |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Impersonation
Указывает уровень олицетворения, используемый этим командлетом для вызова WMI.
Restart-Computer использует WMI.
Допустимые значения для этого параметра:
- по умолчанию: олицетворение по умолчанию. Несмотря на имя, это не значение по умолчанию.
- анонимный: скрывает удостоверение вызывающего объекта.
- Определить: позволяет объектам запрашивать учетные данные вызывающего объекта.
- олицетворения: позволяет объектам использовать учетные данные вызывающего объекта.
Свойства параметров
| Тип: | ImpersonationLevel |
| Default value: | None |
| Допустимые значения: | Default, Anonymous, Identify, Impersonate, Delegate |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Protocol
Указывает, какой протокол используется для перезапуска компьютеров. Допустимые значения: WSMan и DCOM.
Этот параметр представлен в Windows PowerShell 3.0.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Допустимые значения: | DCOM, WSMan |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ThrottleLimit
Указывает максимальное количество одновременных подключений, которые можно установить для выполнения этой команды. Ограничение регулирования применяется только к текущей команде, а не к сеансу или к компьютеру.
Если параметр ThrottleLimit не указан или используется значение 0, Restart-Computer использует не более 32 одновременных подключений.
Свойства параметров
| Тип: | Int32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
AsJobSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Timeout
Указывает длительность ожидания в секундах. При истечении времени ожидания Restart-Computer возвращается в командную строку, даже если компьютеры не перезагрузились.
Параметр тайм-аут действителен только с параметром Wait. Параметр Timeout переопределяет неопределенный период ожидания параметра Wait.
Этот параметр появился в Windows PowerShell 3.0.
Свойства параметров
| Тип: | Int32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | TimeoutSec |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Wait
Restart-Computer подавляет запрос PowerShell и блокирует конвейер до перезапуска компьютеров. Этот параметр можно использовать в скрипте для перезагрузки компьютеров, а затем продолжить обработку после завершения перезагрузки.
Параметр wait ожидает неопределённое время для перезагрузки компьютеров. Вы можете использовать тайм-аут для настройки времени и Для и параметры задержки, чтобы ждать, пока определенные службы будут доступны на перезагруженных компьютерах.
Параметр Ожидание недействителен при перезапуске локального компьютера. Если значение параметра ComputerName содержит имена удаленных компьютеров и локального компьютера, Restart-Computer вызывает нефатальную ошибку для Wait на локальном компьютере, но ожидает, пока удаленные компьютеры перезапустятся.
Этот параметр появился в Windows PowerShell 3.0.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-WhatIf
Показывает, что произойдет, если запустится Restart-Computer. Командлет Restart-Computer не выполняется.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | wi |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-WsmanAuthentication
Указывает механизм, используемый для проверки подлинности учетных данных пользователя. Этот параметр появился в Windows PowerShell 3.0.
Допустимыми значениями этого параметра являются: базовый, CredSSP, по умолчанию, дайджест, Kerberosи согласование.
Дополнительные сведения см. в разделе AuthenticationMechanism.
Предупреждение
Проверка подлинности поставщика служб безопасности учетных данных (CredSSP), в которой учетные данные пользователя передаются на удаленный компьютер для проверки подлинности, предназначена для команд, требующих проверки подлинности на нескольких ресурсах, таких как доступ к удаленному сетевому ресурсу. Этот механизм повышает риск безопасности удаленной операции. Если удаленный компьютер скомпрометирован, учетные данные, передаваемые ему, можно использовать для управления сетевым сеансом.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Допустимые значения: | Basic, CredSSP, Default, Digest, Kerberos, Negotiate |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
DefaultSet
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
String
Можно передать строку, содержащую имя компьютера в этот командлет.
Выходные данные
None
По умолчанию этот командлет не возвращает выходные данные.
System.Management.Automation.RemotingJob
При использовании параметра AsJob этот командлет возвращает объект задания.
Примечания
-
Restart-Computerработать только на компьютерах под управлением Windows и требуется WinRM и WMI для завершения работы системы, включая локальную систему. -
Restart-Computerиспользует метод Win32ShutdownWin32_OperatingSystem класса инструментария управления Windows (WMI). Этот метод требует включения привилегий SeShutdownPrivilege для учетной записи пользователя, используемой для перезапуска компьютера.
В Windows PowerShell 2.0 параметр AsJob не работает надежно при перезапуске или остановке удаленных компьютеров. В Windows PowerShell 3.0 реализация изменяется, чтобы устранить эту проблему.