.Net 3.5'i Windows 2012 R2'ye yükleme


13

Bu yüzden bir windows 2012 R2 Server .net 3.5 yüklemeye çalışıyorum. Özellik Ekle denedim ve DISM üzerinden her ikisi de başarısız.

Özellik Ekleme GUI'sini denerken “Alternatif Yolu Belirt” i kullanıyorum. Bu, “daha ​​fazla rolden, rol hizmetinden veya özellikten birinin yüklenmesi başarısız oldu” hatasıyla başarısız oluyor.

Yükseltilmiş bir PowerShell aracılığıyla DISM'yi kullanmaya çalışırken aşağıdaki komutu kullanıyorum.

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

Bu başarısız olur

Hata: 0x800f0906 Kaynak dosyalar indirilemedi. Özelliği geri yüklemek için gereken dosyaların konumunu belirtmek için "kaynak" seçeneğini kullanın. Bir kaynak konum belirtme hakkında daha fazla bilgi için bkz. Http://go.microsoft.com/fwlink/?LinkId=243077

DISM günlük dosyası C: \ Windows \ Logs \ DISM \ dism.log adresinde bulunabilir.

SXS klasörü için grup ilkesi konumunu ayarlamak için yukarıda listelenen KB (243077) izledim. Yeniden başlatıldı ve hala aynı hata. DSIM günlüğü aşağıdakileri gösterir

Enable enable özelliği işlenirken başarısız oldu. - CPackageManagerCLIHandler :: ExecuteCmdLine (sa: 0x800f0906)

Hızlı bir google, birçok insanın bu konuda sorun yaşadığını ve bu sunucunun yüklü olmadığı KB2966826 ve KB2966828'i kaldırmanız gerektiğini gösterir .

Ayrıca çevrimdışı .Net yükleyicisini denedim ve Windows özellikleri ile eklemeliyim diyor. Tüm komutlar yönetici olarak ve yükseltilmiş bir istem yoluyla çalıştırılmıştır.

Bunu yazarken "Benzer Sorular" ı aradım ve Windows Server 2012'de .net 3.5 yüklenemediğine baktım.

Koşu

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

Yukarıdaki ile aynı hatayı üretti.


Birisi bu sunucuyu zaten yönetiyorsa, ikili dosyaları işletim sisteminden kaldırarak bu özelliği kaldırır. 2012 şimdi yüklemeyi planlamadığınız roller için gereksiz dosyaları kaldırmanıza izin veriyor. Bu yüzden kurulum dosyalarına alternatif bir yol girmenizi istiyor. Komutunuz için bir powershell araması yapın ve size bu alternatif yolu nasıl belirleyeceğinizi söyleyecektir.
Jon

KB2919355 (Güncelleştirme 1) yüklüyse, KB2919355 tümleşik kaynak dosyalarını kullanmalısınız. Benim için bu şekilde çalıştı.
Peter Hahndorf

ek MUI paketleri kurdunuz mu?
magicandre1981

@ magicandre1981 MUI yok, Bu yeni bir Windows yüklemesi. Sunucu başına 1 uygulamayla çalışıyoruz (sanal).
Zapto

WSUS kullanıyor musunuz? Grup ilkesinde, Windows için bu dosyaları bir yükleme kaynağı olamayacağı için WSUS'da bu dosyaları aramamasını söyleyen bir ayar vardır.
Briantist

Yanıtlar:


13

.NET Framework 3.5'i Windows 8.1 ve Server 2012 R2'ye yüklemek için kullandığım komut:

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

Burada D: \, takılı ISO veya DVD sürücüsüdür. Sizinkinden tek fark / LimitAccess , ancak Windows Update veya WSUS ile iletişim kurmaya çalışmasını engellediği için bunun önemli bir parçası olduğuna inanıyorum. Hangi nedenle olursa olsun, Windows 8 / 8.1 ve Server 2012 / 2012R2'de .NET Framework 3.5 için bu yön (Windows Update ile iletişim kurarak) tamamen bozulur ve her zaman başarısız olmasına neden olur.

Ayrıca bkz: http://blogs.technet.com/b/askcore/archive/2012/05/14/windows-8-and-net-framework-3-5.aspx



Sxs klasörü içindeki taksi dosyasını arayan herhangi biri için bunu androidfilehost.com/?fid=745425885120760819 adresinden indirebilirsiniz . Ayrıca yanıttaki bilgi bağlantısı artık arşivlenmiştir ve docs.microsoft.com/en-us/archive/blogs/askcore/… bağlantısında bulunabilir .
Sam

6

Windows yükleme diskini takarken veya fiziksel DVD'yi kullanırken aynı sorunu yaşadım ve işte nasıl düzelttim:

  1. Kök altında bir klasör oluşturun (örneğin C: \ NetFx3)
  2. Kopya microsoft-windows-netfx3-ondemand-package.cab Windows yüklemek diskten \ Sources \ SXS C:. \ NetFx3 klasör
  3. Yönetici olarak Komut İstemi
  4. DISM.exe /online /enable-feature /featurename:NetFX3 /All /Source:C:\NetFX3 /LimitAccess
  5. Metin ilerleme çubuğu tamamlandığında% 100'e gidecek ve size "İşlem başarıyla tamamlandı" mesajı verecektir.

Her ne sebeple olursa olsun, optik sürücüm diskteki dosyaları gösteriyor, ancak DISM hoşlanmıyor, ancak dosyaları C: 'ye kopyalamak işe yaramış gibi görünüyor.


2

Benim için çözüm bu cevapların bir kombinasyonuydu. Windows Server 2012 R2 bulunan bir makinedeydim.

Yanınızda işletim sisteminin ISO'su olmadığı gerçeğini araştırmaya çalıştım. Ama işe yaramadı. Bu yüzden Windows Server 2012 R2 için bir ISO bulmak zorunda kaldım.

1.) Yerel Grup İlkesi Düzenleyicisi'ni veya Grup İlkesi Yönetim Konsolu'nu başlatın (WIN + R ve gpedit.msc yazın).

2.) Bilgisayar Yapılandırması'nı genişletin, Yönetim Şablonları'nı genişletin ve ardından Sistem'i seçin.

3.) "İsteğe bağlı bileşen kurulumu ve bileşen onarımı Grup İlkesi için ayarları belirtin" ayarını açın ve ardından Etkin'i seçin.

4.) "Windows Server Update Services (WSUS) yerine onarım içeriğini indirmek için Windows Update ile doğrudan iletişim kurun" onay kutusunu seçin. Uygula'yı, Tamam'ı tıklayın.

wsus ayarları

5.) İşletim sisteminin bir ISO'sunu indirin ve görüntüyü monte edin. Buradan bir tane indirdim: https://www.technig.com/download-windows-server-2012-r2-essentials-iso-file/

* Not: Bu bir 3Gb dosyasıdır.

6.) Yükseltilmiş bir Powershell açın ve çalıştırın:

DISM / Online / Enable-Feature / FeatureName: NetFx3 / All / LimitAccess / Kaynak: E: \ sources \ sxs

* Not: ISO bu durumda "E: \ sürücüsüne" monte edilmiştir.

Powershell ile Net 3.5'i yükleyin

* Bu iş parçacığı hayat kurtarıcıydı. Katkıda bulunan herkese teşekkürler, özellikle @Joshua McKinnon!


Bu benim senaryomda da yaşadığım sorun gibi görünüyor. Grup İlkesinde yapılan değişiklikler bir işlem yaptı! Değerli olup olmadığını bilmiyorum, ancak Grup İlkesi'ni yükleme tamamlandıktan sonra eski haline getirdim.
Bay Moose

1

Yukarıdaki yöntemlerin hiçbiri benim için çalışmadı. Yapılandırılmış bir WSUS sunucum olduğu ortaya çıktı. Kurmanın tek yolu şuydu:

1) Regedit

2) Bilgisayar-> HKEY_LOCAL_MACHINE-> YAZILIM-> Politikalar-> Microsoft-> ​​Windows-> WindowsUpdate

3) İki anahtarın değerlerini not edin: WUServer ve WUStatusServer

4) Bu anahtarları sildi / yeniden adlandırdı

5) Durduruldu ve Başlatıldı WindowsUpdate

6) .Net3.5 özelliği eklendi

7) Anahtarları geri takın ve WindowsUpdate'i yeniden başlatın.

Umut ediyorum bu yardım eder


1
Kayıt defteri anahtarlarını silmek yerine yeniden adlandırabileceğinizi unutmayın.
Matthew Wetmore

İyi bir nokta! Onları temizlemeyi denedim, ama işe yaramadı. Önerinize eklendi
formica

0

DISM komutu / Source anahtarı tarafından belirtilen medyayı atladığında ve çevrimiçi dosyaları aramaya başladığında, belirtilen medyadaki kaynak dosyaların ya bozuk olduğu ya da sunucunuz için geçerli olmadığı anlamına gelir (sürüm uyuşmazlığı).

Hata kodu 0x800f0906 , Microsoft tarafından belgelendiği şekliyle bu davranışı da kanıtlamaktadır: https://technet.microsoft.com/en-us/library/dn482067.aspx

En iyi seçeneğiniz bu sorunu çözmeye yardımcı olmaktır:

  1. Kullandığınız ortamı değiştirin, mümkünse yeniden indirin.
  2. Medyayı farklı yöntemlerle sunar. Bir VM ise, bir ISO takın. Fiziksel ise, bir DVD'ye yazdırın. her iki dosya da yerel bir diske kopyalayın. Bu başarısız olursa, paylaşılan bir klasörü deneyin.
  3. Yukarıdakilerin tümü başarısız olursa, WSUS kullandığınızı okudum, WSUS'yi bir "Güncelleme Kaynağı" konumuyla yapılandırmayı deneyin, burada sxs klasörü paylaşılan bir klasöre kopyalanır, ağınızdaki sunucular bu klasörü kaynak olarak kullanır Windows bileşenlerini yüklemek için: https://technet.microsoft.com/en-us/library/dn482065.aspx
  4. WSUS kullanmak herhangi bir nedenle seçenek değilse, GPO'yu sunucudan kaldırın ve " gpupdate / sync / force " komutunu çalıştırarak ayarların önbelleğe alınmadığından emin olun. DISM / Online / Enable-Feature / FeatureName: NetFx3 / Tümü "

Yukarıdakilerin tümü başarısız olursa, daha fazla sorun giderme işlemi yapmak için DISM servis günlüklerini sağlamanızı şiddetle tavsiye ederim, ancak bu aşamada, tam bir sunucu yeniden oluşturmak için daha fazla eğilmekteyim.


Bu neredeyse doğru, sorta. 4. adımda yalnızca GPO ayarlarını kaldırarak (yani "yapılandırılmadı" olarak ayarlayarak) sizi 2. adımda bulunduğunuz yere geri döndürür. Server Update Services (WSUS) yerine içerik "DISM komutunun internetten getirilmesine izin verir. / Çevrimiçi anahtarı "internetten getir" anlamına gelmez, "çalışan [veya çevrimiçi] bir bilgisayara hizmet vermek" anlamına gelir. #documentation
austinian

Evet, son çare olarak güncelleme için interneti kullandım, internetten indirmeden kurulumu hızlı hale getirmek için LAN'daki yerel kaynaklardan herhangi birini kullanabileceğinden emin olmak istedim. Ben de DISM swtiches hakkında bilmek, / Çevrimiçi araçlar "eylem anda çalışan işletim sistemine alınacak olan belirtir olduğunu" technet.microsoft.com/en-us/library/hh825079.aspx
Noor Haldiler

Tamam, ancak komut Windows Update için tanımlı bir intranet konumu (örneğin, WSUS sunucusu) olup olmadığını kontrol etmez. 3. adımda GPO'yu etkinleştirmediyseniz , Windows Server Update Services (WSUS) yerine onarım içeriğini indirmek için Windows Update ile doğrudan bağlantı kurun ayarını etkinleştirin.
austinian

0

"Çevrimiçi" kaynağını kontrol ettiği için DISM komutunuz gerekli kaynakları bulamıyor. Windows 6.2+ (varsayılan olarak), Windows Update Hizmeti için bir güncelleştirme kaynağı belirtilirse, yalnızca güncelleştirme kaynak sunucusunda bileşen yükleme / onarma olup olmadığını denetler.

Güncelleme kaynağı (genellikle WSUS) sunucunuzu bileşenleri onarmak / yüklemek için kaynak olarak ayarlamak istemiyorsanız, aşağıdaki Grup İlkesini etkinleştirebilirsiniz:

Bilgisayar Yapılandırması \ Yönetim Şablonları \ Sistem

İsteğe bağlı bileşen kurulumu ve bileşen onarımı için ayarları belirtme

Bu seçeneği işaretlediğinizden emin olun:

Windows Server Update Services (WSUS) yerine onarım içeriğini indirmek için Windows Update ile doğrudan iletişim kurun


0

Sources ortamınızın Windows sürümünüzle tamamen eşleştiğinden emin olun.

Server 2012 R2'de .NET35'i yüklemek için Server 2012 ISO'yu kullanmaya çalışırken yarım gün geçirdim. Kaynak doğru olduğunda, DISM komutu (bu yanıttan ) kusursuz çalışır.


0

Ben de aynı sorunu yaşadım. Çözümüm sunucuyu Active Directory'den kaldırmak, .Net 3.5'i yüklemek ve sonra AD'ye geri eklemekti. Eminim WSUS ile bir katmanda ilgisi var, ama bu bizim için çözüldü. Etki alanına eklemeden önce tüm sunuculara 3.5 yüklediğimizden emin oluruz.



0

Bu konuda internette bir sürü şey var ve çoğu burada cevaplarda özetlendi. Hepsini denedik ve hiçbiri işe yaramadı. Sxs klasörünün çeşitli kopyalarına işaret ederken bile, yine de "kaynak dosyalar bulunamadı" hatasının bir varyasyonunu alır.

Sonunda .net 3.5 (c: \ windows \ winsxs) olan başka bir tam yamalı sunucu üzerinde winsxs klasörünün bir payına işaret etti ve çalıştı:

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

Benim teorim, yükleme işleminin sunucudaki geçerli KB'lerle eşleşen kaynak dosyaları aramasıydı. İki belirli KB'nin kaldırılmasına işaret eden başka makaleler olduğunu biliyorum, ancak bunlar yüklü yamalar listemizde görünmedi.

Ayrıca, ekleme / kaldırma özelliklerinin bu paylaşımla çalışmadığını unutmayın. DISM kullanmak zorunda kaldım.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.