Встановлення .Net 3.5 на Windows 2012 R2


13

Тому я намагаюся встановити .net 3.5 на Windows 2012 R2 Server. Я спробував через функцію "Додати функцію" та через DISM - і помилка.

При спробі через GUI додавання функцій я використовую "Вказати альтернативний шлях". Це не вдається з помилкою "встановлення однієї з більше ролей, служб ролей або функцій не вдалося"

При спробі використовувати піднятий PowerShell використовувати DISM, я використовую наступну команду.

dism.exe /online /enable-feature /featurename:NetFX3 /Source:d:\sources\sxs 

Це не вдається

Помилка: 0x800f0906 Не вдалося завантажити вихідні файли. Використовуйте параметр "джерело", щоб вказати розташування файлів, необхідних для відновлення функції. Докладніші відомості щодо визначення місця розташування джерела див. На веб-сторінці http://go.microsoft.com/fwlink/?LinkId=243077

Файл журналу DISM можна знайти за адресою C: \ Windows \ Logs \ DISM \ dism.log

Я дотримувався перерахованого вище KB (243077), щоб встановити розташування групової політики для папки SXS. Перезавантажено і все та сама помилка. Журнал DSIM показує наступне

Помилка під час обробки команди enable-особливості. - CPackageManagerCLIHandler :: ExecuteCmdLine (hr: 0x800f0906)

Швидкий пошук Google показує, що у багатьох людей виникають проблеми з цим, і вам слід видалити KB2966826 та KB2966828, на цьому сервері не встановлено жодного.

Я також спробував установку офлайн .Net, і він говорить, що я повинен додати його через функції Windows. Усі команди виконувались як адміністратор і за допомогою підвищеного підказки.

Під час написання цього запиту я помітив "Подібні запитання" і ознайомився з цим неможливим встановленням .net 3.5 на сервері Windows 2012

Біг

dism.exe /online /enable-feature /featurename:NetFX3 /all

Виникла та сама помилка, що і вище.


Якщо хтось уже керував цим сервером, то, можливо, буде видалено цю функцію, видаливши бінарні файли з ОС. 2012 рік тепер дозволяє видалити непотрібні файли для ролей, які ви не плануєте встановлювати. Ось чому він пропонує вам альтернативний шлях до файлів налаштування. Зробіть пошук команди для своєї команди, і вона підкаже, як вказати цей альтернативний шлях.
Джон

Якщо у вас встановлено KB2919355 (оновлення 1), слід використовувати вихідні файли, у яких вбудовано KB2919355. Це єдиний спосіб, який він працював на мене.
Пітер Гандорф

Ви встановили додаткові пакети MUI?
magicandre1981

@ magicandre1981 Ні MUI, це нова установка Windows. Ми працюємо над 1 програмою на сервері (віртуально). Я спробую ваші пропозиції.
Заптовий

Ви використовуєте WSUS? У груповій політиці, яку ви можете встановити, є налаштування, яке вказує Windows не шукати ці файли в WSUS, оскільки це не може бути джерелом установки для цього.
британіст

Відповіді:


13

Команда, яку я використовую для встановлення .NET Framework 3.5 на Windows 8.1 та Server 2012 R2:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:D:\sources\sxs

Де D: \ - це встановлений привід ISO або DVD. Єдина відмінність від вашої - / LimitAccess , але я вважаю, що це важлива частина, оскільки це заважає йому намагатися зв’язатися з Windows Update або WSUS. З будь-якої причини цей аспект (звертаючись до оновлення Windows) повністю порушений для .NET Framework 3.5 для Windows 8 / 8.1 та Server 2012 / 2012R2 і завжди призведе до його збою.

Дивіться також: http://blogs.technet.com/b/askcore/archive/2012/05/14/windows-8-and-net-framework-3-5.aspx


набагато простіше, ніж serverfault.com/a/633171/157373
Jason Pyeron

Для кожного, хто шукає файл кабіни у папці sxs, ви можете завантажити його з androidfilehost.com/?fid=745425885120760819 . Також інформаційне посилання у відповіді тепер заархівоване та його можна знайти за посиланням нижче docs.microsoft.com/en-us/archive/blogs/askcore/… .
Сем

6

У мене була така сама проблема, коли я монтував диск встановлення Windows або використовував фізичний DVD, і ось, як я це виправив:

  1. Створіть папку під коренем (наприклад, C: \ NetFx3)
  2. Скопіюйте microsoft-windows-netfx3-ondemand-package.cab з диска встановлення Windows. \ Source \ sxs у папку C: \ NetFx3
  3. Командний рядок як адміністратор
  4. DISM.exe /online /enable-feature /featurename:NetFX3 /All /Source:C:\NetFX3 /LimitAccess
  5. Після завершення текстовий рядок буде досягнутий 100% і надішле повідомлення: "Операція завершена успішно".

З будь-якої причини мій оптичний привід показує файли на диску, але DISM це не любить, але копіювання файлів на C: здається, спрацювало.


2

Для мене рішення було поєднанням цих відповідей. Я був на машині з Windows Server 2012 R2.

Я спробував обійтись тим, що у мене не було ISO-системи. Але не міг змусити його працювати. Тому я змушений був знайти ISO для Windows Server 2012 R2.

1.) Запустіть локальний редактор групової політики або консоль управління груповою політикою (WIN + R і введіть gpedit.msc).

2.) Розгорніть конфігурацію комп'ютера, розгорніть адміністративні шаблони та виберіть Система.

3.) Відкрийте налаштування "Вказати параметри для установки додаткової компоненти та групової політики відновлення компонентів", а потім виберіть Увімкнено.

4.) Установіть прапорець "Зв'яжіться з оновленням Windows безпосередньо, щоб завантажити вміст ремонту замість служб оновлення Windows Server (WSUS)". Клацніть Застосувати, Клацніть ОК.

налаштування wsus

5.) Завантажте ISO ОС та змонтуйте зображення. Я завантажив тут: https://www.technig.com/download-windows-server-2012-r2-essentials-iso-file/

* Примітка: це 3Gb файл.

6.) Відкрийте підняту потужність і запустіть:

DISM / Online / Enable-Feature / FeatureName: NetFx3 / All / LimitAccess / Джерело: E: \ source \ sxs

* Примітка: ISO в цьому випадку був встановлений на "E: \ drive".

встановіть Net 3.5 з Powershell

* Ця нитка була рятівною. Дякуємо всім учасникам, особливо @Joshua McKinnon!


Це, здається, було проблемою, яку я мав і в моєму сценарії. Зміни в груповій політиці спрацювали! Я не знаю, варто чи ні, але я повертаю групову політику до того, що було після завершення встановлення.
Містер Муз

1

Жоден із перерахованих вище методів для мене не працював. Виявилося, у мене налаштований сервер WSUS. Єдиний спосіб я міг це встановити

1) Регедит

2) Перейдіть до комп'ютера-> HKEY_LOCAL_MACHINE-> ПРОГРАМНЕ ЗАБЕЗПЕЧЕННЯ-> Політика-> Microsoft-> ​​Windows-> WindowsUpdate

3) Помічено значення двох клавіш: WUServer і WUStatusServer

4) Видалені / перейменовані ці клавіші

5) Зупинено та розпочато оновлення WindowsUpdate

6) Додано функцію .Net3.5

7) Покладіть клавіші назад і перезавантажте WindowsUpdate.

Я сподіваюся, що це допомагає


1
Зауважте, що ви можете перейменувати ключі реєстру, а не видаляти їх.
Меттью Ветмор

Гарна думка! Я спробував їх очистити, але це не вийшло. Додано у вашу пропозицію
formica

0

Коли команда DISM пропускає носій, визначений перемикачем / Source, і шукає файли в Інтернеті, це означає, що вихідні файли у вказаному носії є пошкодженими або не застосовуються до вашого сервера (невідповідність версії).

Код помилки 0x800f0906 додатково підтверджує таку поведінку, як це підтверджено документами Microsoft: https://technet.microsoft.com/en-us/library/dn482067.aspx

Найкраще допомогти вирішити цю проблему:

  1. Змініть носій, який ви використовуєте, за можливості повторно завантажте його.
  2. Представляйте засоби масової інформації різними методами. Якщо це VM, встановіть ISO. Якщо це фізично, запишіть на DVD. якщо обидва файли, скопіюйте на локальний диск. Якщо це не вдається, спробуйте спільну папку.
  3. Якщо все вищезазначене не вдається, я прочитав, що ви використовуєте WSUS, спробуйте налаштувати WSUS з розташуванням "Оновити джерело", де папка sxs скопійована у загальну папку, сервери у вашій мережі використовуватимуть цю папку як джерело для встановлення компонентів Windows: https://technet.microsoft.com/en-us/library/dn482065.aspx
  4. Якщо використання WSUS з будь-якої причини не є можливим, вийміть GPO з сервера та переконайтесь, що його налаштування не кешовано, запустивши " gpupdate / sync / force ", щойно виконано, спробуйте зробити інсталяцію в Інтернеті з Інтернету за допомогою команди " DISM / Online / Enable-Feature / FeatureName: NetFx3 / Усі "

Якщо все вищезазначене не вдасться, я настійно рекомендую надати журнали обслуговування DISM, щоб зробити подальше усунення несправностей, але на цьому етапі я б більше схилявся до повного відновлення сервера.


Це майже правильно, сорта. Просто видаливши налаштування GPO на кроці 4 - тобто встановивши його "не налаштовано", ви повернетесь туди, де ви були на кроці 2. Встановивши політику увімкнено та встановивши прапорець "Зверніться до оновлення Windows безпосередньо, щоб завантажити ремонт вміст замість служб оновлення Windows Server (WSUS) "дозволить команді DISM виконувати з Інтернету. Перемикач / Інтернет не означає "отримання з Інтернету", це означає "обслуговування працюючого [або онлайн] комп'ютера". #документація
австрійський

Так, я скористався Інтернетом для оновлення в крайньому випадку, хотів переконатися, що він може використовувати будь-який з локальних ресурсів у локальній мережі, щоб зробити інсталяцію швидкою, не завантажуючи з Інтернету. Я також знаю про вставки DISM, / Інтернет означає "Вказує, що дії потрібно здійснити в операційній системі, яка наразі працює" technet.microsoft.com/en-us/library/hh825079.aspx
Noor Khaldi

Гаразд, але команда не перевірить Інтернет, якщо для оновлення Windows визначене місце інтрамережі (наприклад, сервер WSUS). Він перевіриться там, якщо у вас не буде включено групову групу на кроці 3 із налаштуванням Зв’язатися безпосередньо з оновленням Windows, щоб завантажити вміст ремонту замість служб оновлення Windows Server (WSUS) .
австрійський

0

Команда DISM не знаходить потрібних ресурсів, оскільки перевіряє джерело "в Інтернеті". Windows 6.2+ (за замовчуванням) перевірятиме лише встановлення / відновлення компонента на сервері оновлення, якщо джерело оновлення вказано для служби оновлення Windows.

Якщо ви не хочете налаштувати свій сервер оновлення (як правило, WSUS) як джерело для ремонту / встановлення компонентів, ви можете ввімкнути таку групову політику:

Конфігурація комп'ютера \ Адміністративні шаблони \ Система

Вкажіть настройки для додаткової установки компонента та ремонту компонента

Обов’язково перевірте цей параметр:

Зверніться безпосередньо до оновлення Windows, щоб завантажити вміст відновлення замість служб оновлення Windows Server (WSUS)


0

Переконайтесь, що ваші медіа джерела абсолютно відповідають вашій версії Windows.

Я провів півдня, намагаючись використовувати сервер 2012 ISO для встановлення .NET35 на сервері 2012 R2. Після того, як джерело правильне, команда DISM (з цієї відповіді ) працює бездоганно.


0

У мене було саме таке питання. Моя резолюція полягала в тому, щоб видалити сервер з Active Directory, встановити .Net 3.5, а потім додати його до AD. Я впевнений, що це стосується WSUS на якомусь рівні, але це вирішило це для нас. Ми просто переконаймося, що встановимо 3,5 на всіх серверах, перш ніж додавати домен.



0

Про це в Інтернеті дуже багато, і більшість із них було узагальнено у відповідях тут. Ми все це спробували, і нічого з цього не вийшло. Навіть, вказуючи на різні копії папки sxs, вона все одно отримає варіацію помилки "вихідні файли не знайдені".

Нарешті я вказав на частку папки winxs на іншому повністю виправленому сервері, який мав .net 3.5 (c: \ windows \ winxs), і він працював:

DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:\\otherserver\winsxs

Моя теорія полягає в тому, що процес встановлення шукав вихідні файли, які відповідали поточним КБ на сервері. Я знаю, що є й інші статті, які вказують на видалення двох конкретних КБ, але вони не відображались у нашому списку встановлених патчів.

Також зауважте, що функції додавання / видалення не працювали з цією поділкою. Довелося використовувати DISM.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.