Windows Server Core | Changer de mode entre CORE-MSI-GUI
Le mode Core n'a ni bureau, ni console graphique, et certaines fonctionnalités ne sont pas installés tout simplement pour une question de performance en RAM et espace disque.
Nous allons voir comment passer Windows Server 2012 (2012 R2) d'un mode Core à un mode graphique complet ou partiel avec PowerShell.
Définitions
- MSI = (Minimal Server Interface) Package Server-GUI-Mgmt-Infra pour la fonctionnalité Outils et infrastructure de gestion graphique (Gestionnaire de serveur, MMC, PowerShell ISE, Panneau de configuration)
- GUI = Package Server-GUI-Shell pour la fonctionnalité Shell graphique de serveur (Bureau, Explorateur Windows, fonctionnalités, etc.)
Changement de mode
Dans tous les cas, vous pouvez lister les fonctionnalités installés avec :
Get-WindowsFeature | Where-Object {$_.InstallState -ep "Installed"}
Get-windowsFeature | Where-Object {$_.Name -eq "Server-GUI-Mgmt-Infra"}
Get-windowsFeature Server-GUI-Mgmt-Infra
Add-WindowsFeature Server-GUI-Infra
D:\sources> Add-WindowsFeature Server-GUI-Mgmt-Infra -Source wim:D:\sources\Install.wim:2 -restart
Get-WindowsImage -ImagePath D:\Sources\install.wim
Get-WindowsFeature | Where-Object {$_.Name -eq "Server-GUI-Mgmt-Infra"}
Get-windowsFeature Server-GUI-Mgmt-Infra
Get-windowsFeature Server-GUI-Shell
Add-WindowsFeature Server-GUI-Shell -source SourceDeL'installation2012
Add-WindowsFeature Server-GUI-Shell -restart
Get-windowsFeature | Where-Object {$_.Name -eq "Server-GUI-Mgmt-Infra"}
Remove-WindowsFeature Server-GUI-Shell
Get-windowsFeature | Where-Object {$_.Name -eq "Server-GUI-Mgmt-Infra"}
Automatisation du passage d'un mode à l'autre avec PowerShell
Ce script de M. Hicham KADIRI que je remercie, vous permet de basculer entre les modes "Core" - "MSI" - "GUI" sous Windows Server 2012 et 2012 R2.
Il suffit de sélectionner un numéro d'option pour effectuer la conversion d'un mode à un autre.
Description :
=================================================================================================================================
### www.alphorm.com | Auteur : Hicham KADIRI | Formation: Windows Server Core 2012 R2 - Guide de l'Admin IT ###
=================================================================================================================================
Avant d'exécuter le script PowerShell "Basculer entre les mode Core - MSI - GUI.ps1", vous devez changer la stratégie d'exécution
de script sur Windows PowerShell.
Par défaut, celle ci est définie à "RemoteSigned" et doit être changée à "Unrestricted", en effet certains scripts NON signés numériquement peuvent être bloqués par la stratégie d'exécution de script définie par défaut dans Windows PowerShell.
Comment changer la stratégie d'exécution ?
------------------------------------------
> Afficher la stratégie d'exécution de script actuelle :
Get-ExecutionPolicy
Notez le résultat.
> Si la stratégie d'exécution est autre que Unrestricted (RemoteSigned par exemple), saisissez la commande suivante :
Set-ExecutionPolicy Unrestricted
> Exécutez ensuite le script "Basculer entre les mode Core - MSI - GUI.ps1" et Enjoy :) !.
Script PowerShell (M. Hicham KADIRI) :
Basculer entre le mode Core & GUI.ps1
# Ce script vous permet de basculer entre les modes "Core" - "MSI" - "GUI" sous Windows Server 2012 et 2012 R2. # Il suffit de selectionner un numero d'option pour effectuer la conversion d'un mode a un autre. # Auteur : Hicham KADIRI | MVP Windows Expert-IT Pro | Microsoft Technical French Contributor (MTFC) # Prerequis #1 : Windows PowerShell v2.0 | v3.0 | v4.0 # Prerequis #2 : Definissez la strategie d'execution PowerShell a Unrestricted : Set-ExecutionPolicy Unrestricted function GetId ($id) { if ($id -like "[123456]") { switch ($id) { "1" {Add-WindowsFeature Server-Gui-Mgmt-Infra} "2" {Add-WindowsFeature Server-Gui-Shell} "3" {Add-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell} "4" {Remove-WindowsFeature Server-Gui-Mgmt-Infra,Server-Gui-Shell} "5" {Remove-WindowsFeature Server-Gui-Shell} "6" {Remove-WindowsFeature Server-Gui-Mgmt-Infra} } } else { Write-Warning -Message "Choix incorrect, reessayez !" $id=Read-Host -Prompt "Entrez un numero pour selectionner une option" GetId $id } } $banner=@' ======================================================================================= === Basculer entre les modes "Core" - "MSI" - "GUI" | Windows Server 2012 & 2012 R2 === ======================================================================================= [1] Passer du mode "Core" au mode "MSI" [2] Passer du mode "MSI" au mode "GUI" [3] Passer du mode "Core" au mode "GUI" [4] Passer du mode "GUI" au mode "Core" [5] Passer du mode "GUI" au mode "MSI" [6] Passer du mode "MSI" au mode "Core" '@ Write-Host $banner $ID=Read-Host -Prompt "Entrez un numero pour selectionner une option" GetId $id write-host "Un redemarrage est requis pour que la conversion soit prise en compte, voulez-vous redemarrer maintenant?" $Reboot = Read-Host -Prompt "[O] Oui [N] Non (la valeur par défaut est 'Non'" if ($Reboot -eq "o" -or $Reboot -eq "oui") {Restart-Computer} else{"n"} # Fin du script