Більшість сучасних Windows-додатків для своєї нормальної роботи вимагають наявність встановленої платформи .NET Framework. Майстер установки ролей і компонентів Server Manager в Windows Server 2012 R2 дозволяє запустити установку двох різних версій .NET Framework – 3.5 і 4.5. Установка .NET Framework 4.5 зазвичай питань не викликає – вся процедура вкрай проста, чого не скажеш про установку .NET Framework 3.5.

Установка .Net Framework 3.5 в windows server 2012 r2

Справа в тому, що при спробі встановити .NET Framework 3.5 в Windows Server 2012 R2 зі стандартними настройками з’являється помилка «Не вдалося встановити ще одну роль, службу ролей або функції. Не вдалося знайти вихідні файли …».

У російській версії помилка виглядає так:

Не вдалося встановити одну або кілька ролей, служб ролей або компонентів. Не вдалося знайти вихідні файли. Спробуйте встановити ролі, служби ролей або компоненти ще раз в новому сеансі майстра додавання ролей і компонентів, і виберете на сторінці підтвердження параметр «Вказати альтернативний вихідний шлях», щоб вказати дійсне розташування вихідних файлів, необхідних для установки.

Помилка установки .Net Framework 3.5 в windows 2012

Причина такої поведінки майстра установки полягає в тому, що бінарні файли .NET Framework 3.5 не є частиною локального кеша бінарних файлів, які зберігаються на сервер при установці ОС. Зроблено це в рамках концепції Features on Demand в Windows Server 2012 з метою зменшення розміру дискового простору, займаного ОС під свої потреби.

Перевіримо наявність .NET Framework 3.5 в локальному репозиторії, виконавши команду Powershell:

Get-WindowsFeature *Framework*

Get-WindowsFeature * Framework *

Як ви бачите, шуканий компонент знаходиться в віддаленому стані (Install State: Вилучено)

За замовчуванням, при установці NET Framework 3.5 через Server Manager, система намагається отримати необхідні файли з сайту Windows Update в Інтернеті (а не локального сервера WSUS), і якщо на сервері вдається отримати доступ до інтернет, установка завершується з помилкою. Користувачеві потрібно самому вказати шлях до дистрибутива ОС, з якого можна було б встановити, якого бракує компонент.

Щоб встановити .NET Framework 3.5 вручну досить, натиснувши кнопку Вкажіть альтернативний шлях джерела, Вказати альтернативний шлях до папки з вмістом установочного диска Windows Server 2012 R2.

Порада. Установчий диск повинен містити ту ж саму версію ОС, яка встановлена ​​у вас (має значення і редакція, і мову, і наявність оновлень). Якщо програма встановлення не знаходить необхідних файлів у вказаній теці, дивіться рішення нижче.

Шлях до каталогу дистрибутива windows server 2012 r2

Як шлях можна вказати як локальну папку (в нашому прикладі це D: source sxs, Де D: – буква локального DVD-приводу з дистрибутивом Windows Server) або мережевий каталог.

Шлях d:  source  sxs

Натиснувши, ОК система знайде бінарні файли компонента .NET Framework 3.5.і встановить його.

Ту ж саму операцію можна виконати і з командного рядка, виконавши з правами адміністратора команду:

dism /online /enable-feature /featurename:NetFX3 /all /Source:d:sourcessxs /LimitAccess

/Online – означає, що потрібно оновлювати поточну ОС, а не wim образ

/enable-feature /featurename:NetFX3 /all – необхідно встановити платформу .NET Framework 3.5 з усіма функціями

/Source – шлях до каталогу дистрибутива Windows, в якому знаходяться необхідні компоненти

/LimitAccess – запобігти звернення до вузла Windows Update

dism установка .NetFX3 з командного рядкаАналогічна команда Powershell для установки компонента .Net 3.5 виглядає так:

Add-WindowsFeature NET-Framework-Core -Source d:sourcessxs

Шлях до «оригінальному» дистрибутива Windows можна зафіксувати в системі на постійній основі за допомогою:

  • За допомогою параметра реєстру RepairContentServerSource, Який знаходиться в гілці HKLM SOFTWARE Microsoft Windows CurrentVersion Policies Servicing
  • Або групової політики Вкажіть параметри додаткової установки компонента та ремонту компонентів (Політика править цей же параметр в реєстрі)

Групова політика для вказівки каталогу-джерела компонентів windows

Примітка. групова політика Вкажіть параметри додаткової установки компонента та ремонту компонентів знаходиться в розділі GPO Computer Configuration -> Administrative Templates -> System. Політику потрібно включити (Enabled), вказати шлях до каталогу з дистрибутивом ОС (Альтернативний шлях до вихідного файлу). Щоб сервер не намагався оновлюватися з Інтернету, поставте прапорець Ніколи не намагайтесь завантажувати корисне навантаження із служби Windows Update.

Щоб перевірити наявність встановленого .NET Framework 3.5, перейдіть в каталог C.: WindowsMicrosoft.NETРамки64 і переконайтеся, що серед каталогів встановлених версій .NET з’явився v3.5.

Каталог C:  Windows  Microsoft.NET  Framework64  v3.5

У тому випадку, якщо зазначені вище способи установки .NET Framework 3.5.1 вам не допомогли, спробуйте наступні рішення.

Після установки деяких оновлень, версія (білд) Windows Server 2012 R2 в системі може перестати відповідати образу ОС, що зберігається в наявному дистрибутиві. В цьому випадку установник при порівнянні версії ядра Windows відмовляється встановлювати застарілу версію компонента.

У цьому випадку як правило, при установці .NET Framework через dism з’являється помилка 0x800f081f. Не вдалося знайти вихідні файли

помилка DISM при установці .net 3.5 -0x800f081f.  The source files could not be found

Рішення: встановити .Net через з серверів Microsoft:

  • Збережіть в reg файл поточні настройки Windows Update в гілці HKLM Software Policies Microsoft Windows CurrentVersion WindowsUpdate
  • Видаліть цю гілку і перезапустіть службу: net stop wuauserv & net start wuauserv
  • Запустіть установку .Net з інтернету: DISM /Online /Enable-Feature /FeatureName:NetFx3 /All
  • Після закінчення установки поверніть настройки WU, імпортувавши reg файл і ще раз запустіть службу WindowsUpdate
Порада. Надалі можна використовувати тата C: Windows winsxs з даного сервера для установки .Net FrameWork 3.5 на інших серверах стій же версією ОС. Скопіюйте папку C: Windows winsxs на потрібний сервер в каталог C: tmp winsxs і встановіть компонент командою:

dism /online /enable-feature /featurename:NetFX3 /all /Source:C:tmpwinsxs /LimitAccess

Крім того, якщо ви встановлювали на сервер додатковий мовний пакет (Language Packs), перед установкою .NET Framework 3.5.1 його потрібно видалити за допомогою команди lpksetup.

Також перевірте в списку встановлених оновлень системи наявність встановлених патчів для NET 3.5 Framework (теоретично вони взагалі не повинні були встановиться, якщо компонент NetFX3 не встановлено).

видалення встановлених оновлень для net framework 3.5

Видаліть дані відновлення і після перезавантаження спробуйте встановити .NET 3.5.

Leave a Reply

Your email address will not be published. Required fields are marked *