Установка компонента .NET Framework 3.5 в Windows Server 2016
Довольно много приложений для своей работы в Windows Server 2016 / Windows 10 требуют наличия установленного .Net Framework 3.5, несмотря на наличие .NET Framework 4.6, установленного по-умолчанию. К примеру, без .Net 3.5 мне не удалось установить и запустить SQL Management Studio.
Разберемся как установить .Net Framework 3.5 в Windows Server 2016 .
При попытке установить .Net 3.5 через консоль Server Manager (Add Roles and Features -> Features -> Net Framework 3.5 Features, установка заканчивается с ошибкой 0x800f081f ( The source files could not be found ).
Хотя .Net Framework 3.5 присутствует в списке компонентов Windows Server 2016, на самом деле его бинарные файлы в хранилище компонентов Windows отсутствуют (концепция Features on Demand ). Поэтому для его установки нам потребуется дистрибутив Windows Server 2016 в виде iso файла или в распакованном виде на сетевой шаре. Смонтируйте iso образ с дистрибутивом в отдельный виртуальный диск (например, диск D:). Установить компонент можно из GUI либо с помощью PowerShell.
Установка .Net Framework 3.5 с помощью графической консоли Server Manager
Установить компонент .Net 3.5 можно из графической консоли Server Manager. Для этого как и ранее выберите компонент, но, перед тем, как нажать кнопку Install , нажмите небольшую ссылку внизу мастера — Specify an alternative source path .
В этом окне нужно указать путь к хранилищу компонентов дистрибутива Windows Server 2016. Если вы смонтировали дистрибутив в виртуальный привод, это может быть путь D:\sources\sxs. Также это может быть сетевая папка, куда вы предварительно скопировали дистрибутив (например, \\server1\distr\ws2016\sources\sxs). Нажмите ОК.
Осталось запустить установку.
Установка компонента .Net Framework 3.5 с помощью PowerShell
Гораздо проще установить компонент Net Framework 3.5 Features из консоли PowerShell, запушенной с правами администратора. Для этого достаточно выполнить команду
Dism.exe /online /enable-feature /featurename:NetFX3 /All /Source:D:\sources\sxs /LimitAccess
Где D:\ — диск с дистрибутивом Windows Server 2016.
Также можно произвести установку с помощью команды:
Add-WindowsFeature NET-Framework-Core -Source d:\sources\sxs
После завершения установки компонента, перезагрузка сервера не требуется.
SQL Server 2012 — Проблемы установки на Windows Server 2012
При попытке установить RTM версию SQL Server 2012 Standard на свеже-установленную ОС Windows Server 2012 при отсутствии прямого подключения к интернету можно получить ошибку включения зависимой компоненты: NetFx3 -2146498298
При этом процесс установки проходит до конца но не устанавливает основные компоненты SQL Server.
Для решения этой проблемы нам потребуется отдельно установить компоненты .Net Framework 3.5. Так как эти компоненты входят в состав дистрибутива Windows Server 2012, можно вставив установочный диск ОС (в нашем примере буква диска — S:), выполнить команду (с правами Администратора):
Dism /online /enable-feature /featurename: NetFX3 /All /Source: S:\sources\SxS /LimitAccess
Или же мы можем установить эти компоненты через мастер добавления ролей и возможностей Add Roles and Features Wizard в оснастке Server Manager. После того как на шаге Features мы отметим .NET Framework 3.5 Features вызовем окно дополнительной настройки указания места расположения установочных файлов ОС – Specify an alternate source path
Укажем каталог полный пусть к подкаталогу Sources\SxS на нашем DVD-накопителе или сетевой папке, в которую мы предварительно скопировали содержимое установочного диска Windows Server 2012.
Если путь указан верно, то процесс добавления компонент .Net Framework 3.5 пройдёт успешно.
После этого можно заново повторить процедуру установки необходимых компонент SQL Server 2012. Возможно при повторном запуске инсталлятора мы получим ошибку:
System.IO.FileNotFoundException: Could not load file or assembly ‘System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089’ or one of its dependencies. The system cannot find the file specified.
Появление этой ошибки будет вести к отмене вызова окна программы установки SQL Server. Эта “болячка” известна ещё со времени SQL Server 2008 R2 и для решения этой проблемы необходимо найти указанный в тексте ошибки файл user.config и удалить его.
В нашем примере файл расположен в каталоге
%USERPROFILE%\AppData\Local\Microsoft_Corporation\LandingPage.exe_StrongName_ryspccglaxmt4nhllj5z3thycltsvyyx\11.0.0.0
После этого процесс установки SQL Server 2012 должен завершиться без ошибок.
.NET Framework в ОС Windows
Программная платформа .NET Framework была разработана компанией Microsoft для того, чтобы дать возможность разработчикам абстрагироваться от системного окружения конкретного компьютера, на котором будет исполняться их программа. В этом случае не будет иметь значения какая операционная система установлена, какой процессор и другое аппаратное обеспечение используется — главное, чтобы на компьютере была установлена среда .NET Framework, которая обеспечивает исполнение кода и взаимодействие с необходимыми компонентами окружения. Для работы с этой платформой были разработаны или адаптированы специальные языки программирования C#.NET, VB.NET, C++.NET, J#.NET, F#.NET и т.д.
Достаточно большое количество программ написано под эту платформу, поэтому нужно знать, как установить ее на сервер.
.NET Framework актуальной версии (4.x) уже включен на серверах Windows, развернутых из наших шаблонов. Если требуется включить предыдущую версию (3.5) или же сервер развернут из собственного шаблона/установлен из дистрибутива, можно воспользоваться нижеследующей инструкцией.
Установка компонента .NET Framework в ОС Windows Server
Включение компонента .NET Framework в OC Windows Server возможно с использованием Windows Update или с использованием локального хранилища компонентов (потребуются файлы с дистрибутива ОС). Рассмотрим оба варианта.
Вариант 1
Самый простой и быстрый способ, при наличии подключения к сети Интернет, это установка компонента .NET Framework 3.5 с сервера Microsoft Windows Update (актуально для Windows Server 2008R2/2012R2/2016/2019).
Запускаем PowerShell с правами администратора: Пуск — правый клик по ярлыку Windows Powershell — Запуск от имени Администратора (Run as Administrator):
В открывшемся окне PowerShell набираем команду:
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
Eсли установка производится на Windows Server 2008R2:
DISM /Online /Enable-Feature /FeatureName:NetFx3
Нажимаем Enter и ожидаем завершения установки:
Вариант 2
Для установки с использованием локального хранилища (или дистрибутива ОС Windows) через графический интерфейс (Windows Server 2012R2/2016/2019 ):
Запускаем Диспетчер серверов (Server Manager), нажимаем Управление (Manage) – Добавить роли и компоненты (Add Roles and Features):
В появившемся окне нажимаем Далее (Next):
В окне Выбор типа установки (Select installation type) убеждаемся, что выбран пункт установка ролей и компонентов (Role-based or feature-based installation), нажимаем Далее (Next):
Выбор целевого сервера (Select destination server) – проверяем, что в списке выбран требуемый сервер, нажимаем Далее (Next):
Пропускаем Выбор ролей сервера (Select server roles), нажимаем Далее (Next):
В окне Выбор компонентов (Select features) находим в списке требуемую версию .NET Framework и отмечаем галкой, нажимаем Далее (Next):
В случае установки актуальной версии .NET Framework (4.x) в данном окне можно нажимать кнопку Установить (Install), после чего начнется процесс инсталляции из локального хранилища. Если же мы устанавливаем предыдущую версию (3.5), то появится предупреждение, что необходимые для установки файлы отсутствуют и нужно указать путь к данным файлам. Понадобится либо дистрибутив установленной версии дистрибутива ОС Windows, либо копия папки SourcesSxS с этого дистрибутива. Нажимаем на ссылку Указать альтернативный исходный путь (Specify an alternate source path):
В открывшейся форме указываем путь к папке SourcesSxS дистрибутива текущей версии (или копии этой папки – в нашем примере папка скопирована на локальный диск в c:tempsxs), нажимаем ОК:
Вернувшись на форму Подтверждение компонентов установки (Confirm installation selections) нажимаем Установить (Install) и ожидаем окончания установки. Закрываем форму:
Установка на Windows server 2008R2 также производится через Диспетчер серверов:
Запускаем Диспетчер серверов, переходим в раздел Компоненты, нажимаем Добавить компоненты:
В списке компонентов находим и ставим галку на .NET Framework, нажимаем Далее:
В следующем окне нажимаем кнопку Установить:
Дожидаемся успешного окончания установки и закрываем окно: