Обновление
Разберем установку PowerShell версии 5.1, а так же его удаление, на Windows Server 2012
Этому обновлению соответствует KB3191565
По умолчанию в Windows Server 2012 установлен PowerShell версии 3.0
WMF 5.1 в своих пререквизитах не требует установки промежуточных версий, в отличии от упраздненного WMF 5.0.
Поэтому мы сразу можем перейти к установке Windows Management Framework 5.1
Ознакомиться со всеми требованиями к установке можно тут
Откат версии на более низкую
Если у вас есть необходимость вернуться к более низкой версии PowerShell, из-за неправильно выполненной установки, либо ради проведения тестов, то вы можете попробовать следующий вариант.
Находим список установленных WMF:
Самый быстрый вариант, это использовать скрипт который парсит логи на предмет наличия в них записей о работе с WMF
Показать скрипт поиска обновлений
$Session = [activator]::CreateInstance([type]::GetTypeFromProgID("Microsoft.Update.Session","localhost")) $Searcher = $Session.CreateUpdateSearcher() $HistoryCount = $Searcher.GetTotalHistoryCount() $Searcher.QueryHistory(0,$HistoryCount) | ForEach-Object -Process { $Title = $null if($_.Title -match "\(KB\d{6,7}\)"){ # Split returns an array of strings $Title = ($_.Title -split '.*\((?<KB>KB\d{6,7})\)')[1] }else{ $Title = $_.Title } $Result = $null Switch ($_.ResultCode) { 0 { $Result = 'NotStarted'} 1 { $Result = 'InProgress' } 2 { $Result = 'Succeeded' } 3 { $Result = 'SucceededWithErrors' } 4 { $Result = 'Failed' } 5 { $Result = 'Aborted' } default { $Result = $_ } } New-Object -TypeName PSObject -Property @{ InstalledOn = Get-Date -Date $_.Date; Title = $Title; Name = $_.Title; Status = $Result; Description = $_.Description } } | ?{ $_.Description -match 'Windows Management Framework'} | ?{ $_.Status -eq 'Succeeded' } | Sort -Property InstalledOn
Еще один способ найти обновление — это использовать командлет Get-HotFix:
Get-HotFix KB3191565
Его минус в том, что он не отображает имя программы к которой относится Update, а так же его точное время установки.
Затем выполняем команду на удаление выбранного KB, соответствующего нужному нам WMF:
wusa /uninstall /kb:3191565
И последним шагом заново выполняем установку PowerShell 5.1
wusa C:\W2K12-KB3191565-x64.msu
Про развертывание PowerShell в домене средствами GPO читайте тут