Главная

Wednesday, 14 September 2022

Установка .NET Framework v3.5 в Windows Server.


Всем привет.

Довольно много приложений для своей работы в Windows Server или Windows 10 требуют наличия предустановленного .NET Framework 3.5 несмотря на наличие в системе .NET Framework более высоких версий. К примеру, без .Net 3.5 вам не удасться установить и запустить SQL Management Studio. Такой вот загадочный Microsoft. Ну что ж, будем выкручиваться.

Если на вашем Windows Server есть прямой доступ в Интернет, вы можете установить .NET Framefork 3.5 несколькими способам:

  • через Server Manager;
  • с помощью DISM: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
  • с помощью PowerShell: Install-WindowsFeature NET-Framework-Core

При этом все необходимые файлы .NET 3.5 для вашей версии Windows Server загружаются с серверов Windows Update. Чтобы сработал этот метод установки нужно убедиться в:

  • сервер не настроен на локальный WSUS сервер для получения обновлений (проверьте настройки обновлений в групповых политиках или напрямую в реестре: REG QUERY "HKLM\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" -v WUServer)
  • настройки прокси-сервера и файервола не должны ограничивать доступ к серверам Windows Update.

Если с вашего сервера нет прямого доступа в Интернет (что есть правильно), то при попытке установить .NET 3.5 в Windows Server через консоль Server Manager (Add Roles and Features -> Features -> Net Framework 3.5 Features, установка заканчивается с ошибкой 0x800f081f (The source files could not be found) или 0x800F0950.

Хотя .NET Framework 3.5 присутствует в списке компонентов Windows Server 2016/2019, на самом деле его бинарные файлы в хранилище компонентов Windows отсутствуют (концепция Features on Demand). Это сделано, чтобы уменьшить размер ОС на диске. Вы можете проверить наличие.NET Framework 3.5 в локальном хранилище компонентов Windows Server с помощью команды:

Get-WindowsFeature *Framework*

Обычно вы увидите статус компонента NET-Framework-Core для версии 3.5 как Removed.

Поэтому для установки NET-Framework-Core вам потребуется дистрибутив Windows Server 2016/2019 в виде iso файла, DVD диска или в распакованном виде в сетевой папке. Смонтируйте iso образ с дистрибутивом в отдельный виртуальный диск (например, диск D:). Теперь установить компонент можно из GUI либо с помощью PowerShell.

1.Установка .Net Framework 3.5 с помощью графической консоли Server Manager.

Установить компонент .Net 3.5 можно из графической консоли Server Manager. Для этого выберите компонент .Net Framework 3.5 Features, но, перед тем, как нажать кнопку Install, нажмите небольшую ссылку внизу мастера - Specify an alternative source path.


В этом окне нужно указать путь к хранилищу компонентов в дистрибутиве Windows Server. Если вы смонтировали дистрибутив в виртуальный привод, это может быть путь D:\sources\sxs. Также это может быть сетевая папка, куда вы предварительно скопировали дистрибутив (например, \\server1\distr\ws2016\sources\sxs ). Осталось продолжить установку. Однако даже в этом случае вы можете получить ошибку 0x800f081f. Поэтому смело переходите ко второму способу.

2. Установка компонента .Net Framework 3.5 с помощью DISM и PowerShell.

Гораздо проще установить компонент Net Framework 3.5 Features из командной строки или консоли PowerShell, запущенной с правами администратора. Выполните команду:

Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:\sources\sxs /LimitAccess

Где D:\ - диск с дистрибутивом Windows Server 2016.

Параметр LimitAccess запрещает DISM подключение к серверам обновлений для получения установочных файлов компонентов. Используются только файлы в указанном каталоге.

Также можно произвести установку с помощью команды Add-WindowsFeature:

Add-WindowsFeature NET-Framework-Core -Source d:\sources\sxs

После завершения установки компонента, перезагрузка сервера не требуется.

Также вы можете вручную скопировать 2 cab-файла microsoft-windows-netfx3... из каталога sources\sxs вашего дистрибутива. В этом случае для установки .Net 3.5 достаточно выполнить команду:

dism /online /Add-Package /PackagePath:C:install\net35\microsoft-windows-netfx3-ondemand-package~31bf3856ad364e35~amd64~~.cab.

Именно так мы и поступаем с Windows 10.

Удачи.

Слава Украине!

No comments:

Post a Comment

А что вы думаете по этому поводу?