Installazione di .Net 3.5 su Windows 2012 R2


13

Quindi sto cercando di installare .net 3.5 su un server Windows 2012 R2. Ho provato tramite la funzione Aggiungi e tramite DISM entrambi falliscono.

Quando provo tramite la GUI Aggiungi funzionalità sto usando "Specifica percorso alternativo" Questo non riesce con l'errore "installazione di uno o più ruoli, servizi ruolo o funzioni non riuscita"

Quando provo tramite PowerShell elevato ad usare DISM, sto usando il seguente comando.

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

Questo fallisce con

Errore: 0x800f0906 Impossibile scaricare i file di origine. Utilizzare l'opzione "sorgente" per specificare il percorso dei file necessari per ripristinare la funzione. Per ulteriori informazioni su come specificare un percorso di origine, vedere http://go.microsoft.com/fwlink/?LinkId=243077

Il file di registro DISM è disponibile in C: \ Windows \ Logs \ DISM \ dism.log

Ho seguito il KB elencato sopra (243077) per impostare la posizione dei criteri di gruppo per la cartella SXS. Riavviato e sempre lo stesso errore. Il registro DSIM mostra quanto segue

Errore durante l'elaborazione del comando enable-feature. - CPackageManagerCLIHandler :: ExecuteCmdLine (hr: 0x800f0906)

Un rapido google mostra che molte persone hanno problemi con questo e che dovresti disinstallare KB2966826 e KB2966828 che questo server non ha installato.

Ho anche provato il programma di installazione .Net offline e mi dice che devo aggiungerlo tramite le funzionalità di Windows. Tutti i comandi sono stati eseguiti come amministratore e tramite un prompt elevato.

Durante la scrittura di questo ho cercato notato "Domande simili" e ho visto questo Impossibile installare .net 3.5 su Windows Server 2012

In esecuzione

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

Ha prodotto lo stesso errore di cui sopra.


Se qualcuno ha già gestito questo server, è probabile che abbiano rimosso quella funzione rimuovendo i file binari dal sistema operativo. Il 2012 ora ti consente di rimuovere i file non necessari per i ruoli che non prevedi di installare. Ecco perché ti sta chiedendo un percorso alternativo ai file di installazione. Esegui una ricerca PowerShell per il tuo comando e ti dirà come specificare quel percorso alternativo.
Jon

Se è installato KB2919355 (aggiornamento 1), è necessario utilizzare i file di origine con KB2919355 integrato. Questo è l'unico modo in cui ha funzionato per me.
Peter Hahndorf,

hai installato pacchetti MUI aggiuntivi?
magicandre1981,

@ magicandre1981 No MUI, Questa è una nuova installazione di Windows. Lavoriamo su 1 app per server (virtuale). Proverò i tuoi suggerimenti.
Zapto,

Stai usando WSUS? C'è un'impostazione nei criteri di gruppo che puoi impostare che dice a Windows di non cercare questi file in WSUS, poiché non può essere un'origine di installazione per questo.
Briantist,

Risposte:


13

Il comando che uso per installare .NET Framework 3.5 su Windows 8.1 e Server 2012 R2 è:

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

Dove D: \ è l'unità ISO o DVD montata. L'unica differenza dalla tua è / LimitAccess , ma credo che sia la parte importante, in quanto impedisce che tenti di contattare Windows Update o WSUS. Per qualsiasi motivo, questo aspetto (contattare Windows Update) è totalmente rotto per .NET Framework 3.5 su Windows 8 / 8.1 e Server 2012 / 2012R2 e causa sempre un errore.

Vedi anche: http://blogs.technet.com/b/askcore/archive/2012/05/14/windows-8-and-net-framework-3-5.aspx



Per chiunque cerchi il file cab all'interno della cartella sxs è possibile scaricarlo da androidfilehost.com/?fid=745425885120760819 . Inoltre, il collegamento informativo nella risposta è ora archiviato e può essere trovato al seguente link docs.microsoft.com/en-us/archive/blogs/askcore/… .
Sam

6

Ho avuto lo stesso problema quando monto il disco di installazione di Windows o utilizzo il DVD fisico, ed ecco come l'ho risolto:

  1. Crea una cartella sotto root (C: \ NetFx3 per esempio)
  2. Copia microsoft-windows-netfx3-ondemand-package.cab da un disco di installazione di Windows. \ Sources \ sxs nella cartella C: \ NetFx3
  3. Prompt dei comandi come amministratore
  4. DISM.exe /online /enable-feature /featurename:NetFX3 /All /Source:C:\NetFX3 /LimitAccess
  5. La barra di avanzamento del testo passerà al 100% una volta completata e ti darà un messaggio: "Operazione completata con successo".

Per qualsiasi motivo, la mia unità ottica mostra i file sul disco, ma al DISM non piace, ma la copia dei file su C: sembra aver funzionato.


2

La soluzione per me era una combinazione di queste risposte. Ero su una macchina con Windows Server 2012 R2.

Ho provato a aggirare il fatto che non avevo un ISO del sistema operativo a portata di mano. Ma non è riuscito a farlo funzionare. Quindi sono stato costretto a trovare un ISO per Windows Server 2012 R2.

1.) Avviare l'Editor Criteri di gruppo locali o la Console Gestione criteri di gruppo (WIN + R e digitare gpedit.msc).

2.) Espandere Configurazione computer, espandere Modelli amministrativi, quindi selezionare Sistema.

3.) Aprire l'impostazione "Specificare le impostazioni per l'installazione di componenti opzionali e la riparazione di componenti Criteri di gruppo", quindi selezionare Abilitato.

4.) Selezionare la casella di controllo "Contattare direttamente Windows Update per scaricare il contenuto di riparazione anziché Windows Server Update Services (WSUS)". Fai clic su Applica, fai clic su OK.

impostazioni wsus

5.) Scarica un ISO del sistema operativo e monta l'immagine. Ne ho scaricato uno qui: https://www.technig.com/download-windows-server-2012-r2-essentials-iso-file/

* Nota: è un file 3Gb.

6.) Apri un Powershell elevato ed esegui:

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

* Nota: in questo caso l'ISO è stato montato su "E: \ drive".

installa Net 3.5 con Powershell

* Questo thread è stato un salvavita. Grazie a tutti i collaboratori, in particolare @Joshua McKinnon!


Questo sembra essere stato il problema che ho avuto anche nel mio scenario. Le modifiche ai criteri di gruppo hanno funzionato a meraviglia! Non so se valga la pena o meno, ma ho riportato i Criteri di gruppo su come era una volta completata l'installazione.
Mr Moose,

1

Nessuno dei metodi sopra ha funzionato per me. Si è scoperto che avevo configurato un server WSUS. L'unico modo in cui ho potuto installarlo era

1) Regedit

2) Vai su Computer-> HKEY_LOCAL_MACHINE-> SOFTWARE-> Politiche-> Microsoft-> ​​Windows-> WindowsUpdate

3) Prendere nota dei valori delle due chiavi: WUServer e WUStatusServer

4) Eliminato / rinominato questi tasti

5) WindowsUpdate arrestato e avviato

6) Aggiunta la funzione .Net3.5

7) Riposizionare le chiavi e riavviare WindowsUpdate.

spero possa essere d'aiuto


1
Si noti che è possibile rinominare le chiavi del Registro di sistema anziché eliminarle.
Matthew Wetmore,

Buon punto! Ho provato a cancellarli, ma non ha funzionato. Aggiunto nel tuo suggerimento
formica,

0

Quando il comando DISM salta il supporto specificato dall'opzione / Source e cerca i file online, significa che i file di origine nel supporto specificato sono danneggiati o non applicabili al server (mancata corrispondenza della versione).

Il codice di errore 0x800f0906 dimostra ulteriormente questo comportamento come documentato da Microsoft: https://technet.microsoft.com/en-us/library/dn482067.aspx

La soluzione migliore è aiutare a risolvere questo problema è:

  1. Cambia il supporto che stai utilizzando, scaricalo di nuovo se possibile.
  2. Presentare i media in diversi metodi. Se si tratta di una macchina virtuale, montare un ISO. Se è fisico, masterizza su un DVD. se entrambi i file, copia su un disco locale. Se fallisce, prova una cartella condivisa.
  3. Se tutto quanto sopra fallisce, ho letto che stai usando WSUS, prova a configurare WSUS con una posizione "Aggiorna sorgente", dove hai una cartella sxs copiata in una cartella condivisa, i server nella tua rete useranno quella cartella come fonte per l'installazione dei componenti di Windows: https://technet.microsoft.com/en-us/library/dn482065.aspx
  4. Se l'utilizzo di WSUS non è un'opzione per nessun motivo, rimuovere l'oggetto Criteri di gruppo dal server e assicurarsi che le impostazioni non vengano memorizzate nella cache eseguendo " gpupdate / sync / force ", una volta fatto, provare a eseguire l'installazione online da Internet usando il comando " DISM / Online / Enable-Feature / FeatureName: NetFx3 / All "

Se tutto quanto sopra fallisce, ti consiglio vivamente di fornire i registri di manutenzione DISM per eseguire qualsiasi ulteriore risoluzione dei problemi, ma in questa fase, mi spingerei di più per fare una ricostruzione completa del server.


Questo è quasi giusto, sorta. Rimuovendo semplicemente le impostazioni dell'oggetto Criteri di gruppo nel passaggio 4, ovvero impostandolo su "non configurato", tornerai al punto in cui ti trovavi al passaggio 2. Impostando il criterio su abilitato e selezionando la casella "Contatta Windows Update direttamente per scaricare la riparazione contenuto anziché Windows Server Update Services (WSUS) "consentirà al comando DISM di recuperare da Internet. Il parametro / Online non significa "recuperare da Internet", significa "eseguire la manutenzione di un computer in esecuzione [o online]". #documentation
austinian

Sì, ho fatto uso di Internet per l'aggiornamento come ultima risorsa, volevo assicurarmi che potesse usare qualsiasi risorsa locale nella LAN per rendere veloce l'installazione senza scaricarla da Internet. Conosco anche gli swtich DISM, / Online significa "Specifica che l'azione deve essere eseguita sul sistema operativo che è attualmente in esecuzione" technet.microsoft.com/en-us/library/hh825079.aspx
Noor Khaldi

Va bene, ma il comando non controlla Internet se esiste una posizione Intranet definita per Windows Update (ad esempio un server WSUS). Verificherà lì a meno che non si sia attivato l'oggetto Criteri di gruppo nel passaggio 3 con l'impostazione Contattare direttamente Windows Update per scaricare il contenuto di riparazione anziché Windows Server Update Services (WSUS) abilitato.
austinian,

0

Il tuo comando DISM non trova le risorse necessarie perché sta verificando la fonte "online". Windows 6.2+ verificherà (per impostazione predefinita) solo con il server di origine aggiornamenti per l'installazione / riparazione dei componenti se viene specificata un'origine di aggiornamento per il servizio Windows Update.

Se non si desidera impostare il server di origine degli aggiornamenti (in genere WSUS) come origine per la riparazione / installazione dei componenti, è possibile abilitare i seguenti Criteri di gruppo:

Configurazione computer \ Modelli amministrativi \ Sistema

Specificare le impostazioni per l'installazione e la riparazione dei componenti opzionali

Assicurati di selezionare questa opzione:

Contattare direttamente Windows Update per scaricare il contenuto di riparazione anziché Windows Server Update Services (WSUS)


0

Assicurati che i tuoi supporti Sources corrispondano perfettamente alla tua versione di Windows.

Ho trascorso mezza giornata a provare a utilizzare Server 2012 ISO per installare .NET35 su Server 2012 R2. Una volta che l'origine è corretta, il comando DISM (da questa risposta ) funziona perfettamente.


0

Ho avuto lo stesso identico problema. La mia risoluzione era quella di rimuovere il server da Active Directory, installare .Net 3.5, quindi aggiungere nuovamente ad AD. Sono sicuro che abbia a che fare con WSUS ad un certo livello, ma questo ha risolto il problema per noi. Ci assicuriamo solo di installare 3.5 su tutti i server prima di aggiungere al dominio.



0

Ci sono molte cose su Internet su questo e la maggior parte è stata riassunta nelle risposte qui. Abbiamo provato tutto e nessuno ha funzionato. Anche quando si punta a varie copie della cartella sxs, si otterrebbe comunque una variazione dell'errore "file di origine non trovati".

Alla fine l'ho puntato su una condivisione della cartella winsxs su un altro server con patch complete che aveva .net 3.5 (c: \ windows \ winsxs) e ha funzionato:

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

La mia teoria è che il processo di installazione era alla ricerca di file sorgente che corrispondessero agli attuali KB sul server. So che ci sono altri articoli che indicano la rimozione di due KB specifici, ma quelli non sono stati mostrati nel nostro elenco di patch installate.

Si noti inoltre che le funzionalità di aggiunta / rimozione non funzionavano con questa condivisione. Ho dovuto usare DISM.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.