Поделиться через


Unregister-PSSessionConfiguration

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

Синтаксис

Unregister-PSSessionConfiguration
          [-Name] <String>
          [-Force]
          [-NoServiceRestart]
          [-WhatIf]
          [-Confirm]
          [<CommonParameters>]

Описание

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

Командлет Unregister-PSSessionConfiguration удаляет зарегистрированные конфигурации сеанса с компьютера. Этот командлет предназначен для системных администраторов для управления настраиваемыми конфигурациями сеансов для пользователей.

Чтобы изменения вступили в силу, Unregister-PSSessionConfiguration перезапускает службу WinRM. Чтобы предотвратить перезапуск, укажите параметр NoServiceRestart .

Если вы случайно удалили конфигурации по умолчанию Microsoft.PowerShell или Microsoft.PowerShell32 конфигурации сеанса Enable-PSRemoting , используйте командлет для их восстановления. Дополнительные сведения см. в разделе about_Session_Configurations.

Примеры

Пример 1. Удаление конфигурации сеанса

В этом примере конфигурация сеанса удаляется MaintenanceShell с компьютера.

Unregister-PSSessionConfiguration -Name "MaintenanceShell"

Пример 2. Удаление конфигурации сеанса и перезапуск службы WinRM

В этом примере мы удалим конфигурацию MaintenanceShell и перезапустим службу WinRM. Параметр Force подавляет все сообщения пользователя для перезапуска службы WinRM без запроса.

Unregister-PSSessionConfiguration -Name MaintenanceShell -Force

Пример 3. Удаление всех конфигураций сеанса

В этих примерах показаны два способа удаления всех конфигураций сеанса на компьютере. Обе команды имеют одинаковый эффект и могут использоваться взаимозаменяемо.

Unregister-PSSessionConfiguration -Name *
Get-PSSessionConfiguration -Name * | Unregister-PSSessionConfiguration

Пример 4. Отмена регистрации без перезапуска

В этом примере показан эффект использования параметра NoServiceRestart для предотвращения перезапуска службы, который может нарушить любые сеансы на компьютере.

PS> Unregister-PSSessionConfiguration -Name "MaintenanceShell" -NoServiceRestart
PS> Get-PSSessionConfiguration -Name "MaintenanceShell"

Get-PSSessionConfiguration -Name MaintenanceShell : No Session Configuration matches criteria "MaintenanceShell".
+ CategoryInfo          : NotSpecified: (:) [Write-Error], WriteErrorException
+ FullyQualifiedErrorId : Microsoft.PowerShell.Commands.WriteErrorException

PS> New-PSSession -ConfigurationName "MaintenanceShell"

Id Name      ComputerName    State    Configuration         Availability
-- ----      ------------    -----    -------------         ------------
1 Session1  localhost       Opened   MaintenanceShell      Available

PS> Restart-Service winrm
PS> New-PSSession -ConfigurationName MaintenanceShell

[localhost] Connecting to remote server failed with the following error message :
 The WS-Management service cannot process the request.
 The resource URI (http://schemas.microsoft.com/powershell/MaintenanceShell) was not found in the WS-Management catalog.
 The catalog contains the metadata that describes resources, or logical endpoints.
 For more information, see the about_Remote_Troubleshooting Help topic.
 + CategoryInfo          : OpenError: (System.Manageme....RemoteRunspace:RemoteRunspace) [], PSRemotingTransportException
 + FullyQualifiedErrorId : PSSessionOpenFailed

Удаляет Unregister-PSSessionConfiguration конфигурацию сеанса MaintenanceShell . Однако, поскольку команда использует параметр NoServiceRestart , служба WinRM не перезапускается, и изменение еще не в полной мере вступает в силу.

Get-PSSessionConfiguration Затем пытается получить MaintenanceShell сеанс. Так как сеанс был удален из таблицы ресурсов WS-Management, Get-PSSessionConfiguration он не может вернуться.

Командлет New-PSSession создает сеанс с использованием конфигурации MaintenanceShell . Команда выполняется успешно. Затем мы перезапустим службу WinRM.

Наконец, New-PSSession командлет пытается создать сеанс, использующий конфигурацию MaintenanceShell . На этот раз сеанс завершается сбоем MaintenanceShell , так как конфигурация была удалена при перезапуске службы WinRM.

Параметры

-Confirm

Запрос подтверждения перед выполнением командлета.

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

-Force

Указывает, что командлет не запрашивает подтверждение и перезапускает службу WinRM без запроса. Перезапуск службы обеспечивает вступление изменений конфигурации в силу.

Чтобы предотвратить перезапуск и подавить запрос на перезапуск, используйте параметр NoServiceRestart.

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

-Name

Указывает имена конфигураций сеансов, которые нужно удалить. Введите имя одной конфигурации сеанса или шаблон для отбора имен конфигураций. Можно использовать подстановочные знаки. Это обязательный параметр.

Вы также можете передать конфигурации сеанса в Unregister-PSSessionConfiguration.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-NoServiceRestart

Указывает, что этот командлет не перезапускает службу WinRM и подавляет запрос на перезапуск службы.

По умолчанию при выполнении Unregister-PSSessionConfiguration команды вам будет предложено перезапустить службу WinRM, чтобы изменения вступили в силу. Пока служба WinRM не будет перезапущена, пользователи по-прежнему могут использовать незарегистрированную конфигурацию сеанса, даже если Get-PSSessionConfiguration она не будет находиться.

Чтобы перезапустить службу WinRM без запроса, укажите параметр Force . Чтобы перезапустить службу WinRM вручную, используйте Restart-Service командлет .

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

-WhatIf

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

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

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

Microsoft.PowerShell.Commands.PSSessionConfigurationCommands

Объект конфигурации сеанса можно передать из Get-PSSessionConfiguration в этот командлет.

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

None

Этот командлет не создает никаких объектов.

Примечания

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

Для выполнения этого командлета необходимо запустить PowerShell с помощью параметра Запуск от имени администратора .