вторник, 18 июня 2019 г.

Ошибка 0x800f0954 при установке компонентов RSAT на Windows 10 1903


Начиная с версии Windows 10 1809, RSAT и некоторые другие компоненты встроены в систему и требуют установки с отдельного диска (Feature On Demand - FOD) или через Windows Update, а не устанавливаются через отдельные установщики. 
При этом если машина обновляется через корпоративный WSUS/SCCM, то установить RSAT ни через графический интерфейс, ни через Powershell невозможно.




Add-WindowsCapability -Online -Name Rsat.ActiveDirectory.DS-LDS.Tools~~~~0.0.1.0

Add-WindowsCapability : Add-WindowsCapability failed. Error code = 0x800f0954

At line:1 char:1

+ Add-WindowsCapability -Online -Name Rsat.ActiveDirectory.DS-LDS.Tools ...

+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (:) [Add-WindowsCapability], COMException

    + FullyQualifiedErrorId : Microsoft.Dism.Commands.AddWindowsCapabilityCommand


Варианты решения:


  • Изменить групповую политику и разрешить обновляться через Windows Update.
  • Создать корпоративный каталог обновлений на основе образа FOD и через групповые политики нацелить клиентов на него.
  • Изменить значение реестра для возможности онлайн-установки.



Про первые два варианта можете прочитать тут.



Если же вам нужно установить RSAT быстро и на отдельно взятой машине, то можно воспользоваться более простым сценарием.

  • Запустить Regedit.exe
  • Перейти в раздел Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU.
  • Изменить значение UseWUServer на 0.
  • Перезагрузить службу Windows Update.
  • Установить компоненты RSAT.
  • После установки RSAT вернуть значение UseWUServer в 1 (или дождаться очередного применения групповой политики).


Или через Powershell:


Set-ItemProperty "REGISTRY::HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU" UseWUserver -value 0


Get-Service wuauserv | Restart-Service


Get-WindowsCapability -Online -Name RSAT*  | Add-WindowsCapability -Online


Set-ItemProperty "REGISTRY::HKLM\Software\Policies\Microsoft\Windows\WindowsUpdate\AU" UseWUserver -value 1