Active Directory : Supprimer les ordinateurs d’une OU en PowerShell
I. Présentation
Dans un annuaire Active Directory, les objets (utilisateurs, groupes, ordinateurs, etc.) sont organisés par Unités d'Organisation (Organizational Unit, OU, UO). Ainsi, dans une unité d'organisation on peut retrouver un grand nombre d'ordinateurs enregistrés comme faisant partie du domaine.
Si vous avez besoin de supprimer les ordinateurs contenus dans une OU, via un script (notamment pour de l'automatisation), vous pouvez effectuer cette tâche grâce à PowerShell. C'est ce que nous allons voir dans ce tutoriel, une astuce simple mais pratique quand le cas se présente.
Pour ma part : Un contrôleur de domaine sous Windows Server 2012 R2, pour le domaine it-connect.fr, avec une unité d'organisation nommée "Formation" et qu'il est nécessaire de purger au niveau des objets ordinateurs (elle contient aussi des utilisateurs). Le chemin LDAP de l'OU est :
OU=Formation,DC=it-connect,DC=fr
II. Code PowerShell
Pour effectuer l'opération, on va s'appuyer sur deux commandlets PowerShell :
- Get-ADComputer : Lister les objets ordinateurs de l'Active Directory
- Remove-ADComputer : Supprimer des objets de type ordinateur dans l'Active Directory
Ainsi, nous allons concaténer l'utilisation de ces deux commandes pour obtenir la liste des ordinateurs présent dans une OU en particulier, puis, pour chaque objet nous effectuerons une action de suppression.
Ceci se traduit par la commande suivante :
Get-ADComputer -SearchBase "OU=Formation,DC=it-connect,DC=fr" -Filter * | Remove-ADComputer -confirm:$false
Dans un premier temps, je vous conseil d'exécuter uniquement la première partie de la commande, à savoir :
Get-ADComputer -SearchBase "OU=Formation,DC=it-connect,DC=fr" -Filter *
Ceci permettra de lister les ordinateurs sans effectuer d'action, dans le but de s'assurer que les ordinateurs qui sont présents dans le résultat de cette commande sont bien ceux que le souhaitent supprimer.
Une fois la vérification effectuée, la commande de suppression peut être exécutée plus sereinement.
Je trouve généreux de votre part de partager vos connaissances dans ce domaine au moment ou beaucoup font encore cela un sujet tabou. Je vous suis très reconnaissant.
Comment vous joindre en privé?
bonjour Florian,
je vous remercie pour votre générosité et aide
je voudrai exécuter une commande afin de nettoyer ma liste des Ordinateurs inactifs, j’ai une longue liste contenant des ordinateurs fonctionnels mais aussi d’autres (beaucoup) ,ce sont surement des doublons créés après avoir renommer des ordinateurs dans mon réseau
merci de m’aider