Gérer les rôles et fonctionnalités en PowerShell

Le module ServerManager de Windows Server 2012 ajoute des cmdlets à PowerShell pour gérer les rôles et fonctionnalités d’un serveur Windows.

Sous Windows Server 2008 R2, il y en avait 3.

Module ServerManager avec Windows Server 2008 R2
Module ServerManager avec Windows Server 2008 R2

Sous Windows Server 2012, il y a maintenant 5 cmdlets et 2 alias.

Module ServerManager avec Windows Server 2012
Module ServerManager avec Windows Server 2012

« Add-WindowsFeature » et « Remove-WindowsFeature » sont abandonnés et deviennent des alias des nouveaux cmdlet « Install-WindowsFeature » et « Uninstall-WindowsFeature ».

Install-WindowsFeature

Le cmdlet « Install-WindowsFeature » installe un ou plusieurs rôles, services de rôle ou fonctionnalités. Il fonctionne comme l’interface graphique du gestionnaire de serveur sauf qu’il n’installe pas, par défaut, les consoles d’administration. Pour installer les consoles en même temps que les rôles, services de rôle ou fonctionnalités, il faut préciser le paramètre « -IncludeManagementTools ».

Par exemple : Pour installer le rôle « serveur DNS »

Install-WindowsFeature -Name DNS

Par exemple : Pour installer le rôle « serveur DNS » et sa console d’administration

Install-WindowsFeature -Name DNS -IncludeManagementTools

En plus du paramètre « -IncludeManagementTools », le paramètre « -IncludeAllSubFeature » permet d’installer automatiquement tous les services de rôle ou les fonctionnalités enfants.

Par exemple : Pour installer le rôle « Services d’impression et de numérisation de document » avec son composant par défaut : Serveur d’impression.

Install-WindowsFeature -Name Print-Services

Par exemple : Pour installer le rôle « Services d’impression et de numérisation de document » et tous ses enfants : Serveur d’impression, Impression Internet, Serveur de numérisation distribuée, Service LPD.

Install-WindowsFeature -Name Print-Services -IncludeAllSubFeatures

Si vous cherchez les noms des rôles et des services de rôles, c’est ici : La liste des rôles et leur nom PowerShell, ou regardez plus bas. Idem pour les fonctionnalités : La liste des fonctionnalités et leur nom PowerShell.

Pour les autres paramètres du cmdlet, l’aide du TechNet en anglais : Install-WindowsFeature

Uninstall-WindowsFeature

Le cmdlet « Uninstall-WindowsFeature » désinstalle un ou plusieurs rôles, services de rôle ou fonctionnalités. Il fonctionne comme l’interface graphique du gestionnaire de serveur sauf qu’il ne désinstalle pas, par défaut, les consoles d’administration. Néanmoins pour désinstaller les consoles en même temps que les rôles, services de rôle ou fonctionnalités, il faut préciser le paramètre « -IncludeManagementTools ».

Par exemple : Pour désinstaller le rôle « serveur DHCP » et sa console d’administration

Uninstall-WindowsFeature -Name DHCP -IncludeManagementTools

Un paramètre « -Remove », permet en plus de la désinstallation de supprimer physiquement les fichiers du rôle (ou du service de rôle, ou de la fontionnalité) présents sur le disque. Par défaut, tous les fichiers d’installation sont conservés dans le répertoire « C:\Windows\WinSxS ». Pratique pour gagner un peu de place.

Par exemple :

Uninstall-WindowsFeature -Name Print-Services -Remove

Pour les autres paramètres du cmdlet, l’aide du TechNet en anglais : Uninstall-WindowsFeature

Get-WindowsFeature

Le cmdlet « Get-WindowsFeature » liste les rôles, services de rôles et fonctionnalités installées ou disponibles sur le serveur.

Sans paramètre, on obtient un arbre avec le nom d’affichage, le nom PowerShell et l’état.

Par exemple :

Get-WindowsFeature
Get-WindowsFeature
Get-WindowsFeature

Par exemple : Pour avoir le détail des informations du service de rôle « Services de fichiers et iSCSI »

Get-WindowsFeature -Name File-Services | Format-List
Get-WindowsFeature File-Services
Get-WindowsFeature -Name File-Services

Pour lister les rôles disponibles :

Get-WindowsFeature | Where-Object { $_.FeatureType -eq "Role" }

Ou, lister les services de rôles disponibles :

Get-WindowsFeature | Where-Object { $_.FeatureType -eq "Role Service" }

Ou encore, lister les fonctionnalités disponibles :

Get-WindowsFeature | Where-Object { $_.FeatureType -eq "Feature" }

Pour les autres paramètres du cmdlet, l’aide du TechNet en anglais : Get-WindowsFeature

1 réflexion au sujet de “Gérer les rôles et fonctionnalités en PowerShell

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.