Serveur 2012, Powershell 3.0.
Je travaille sur un projet qui nécessite d'automatiser l'activation et la désactivation des adaptateurs réseau. Voici un exemple de ce que je vois lorsque je lance le programme Get-NetAdapter
:
Name InterfaceDescription ifIndex Status MacAddress LinkSpeed
---- -------------------- ------- ------ ---------- ---------
Slot 0 Port 4 HP NC382i DP Multifunction Gigabi...#53 15 Not Present 11-80-1B-94-2A-82 0 bps
Slot 0 Port 2 (TM-2) HP NC382i DP Multifunction Gigabi...#51 14 Up 11-80-1B-94-27-72 1 Gbps
Team 1 (Team) Microsoft Network Adapter Multiplexo... 17 Up 11-80-1B-94-2A-72 1 Gbps
Slot 0 Port 3 HP NC382i DP Multifunction Gigabi...#52 13 Disabled 11-80-1B-94-2A-80 1 Gbps
Slot 0 Port 1 (TM-1) HP NC382i DP Multifunction Gigabi...#50 12 Up 11-80-1B-94-2A-70 1 Gbps
Remarquez que l'attribut Status n'est pas binaire. Il peut être Up, Disabled ou Not Present.
Quand je cours Enable-NetAdapter
sur une carte réseau dont le statut est 'Not Present', la commande revient en silence, sans erreur, mais n'active pas la carte réseau. J'ai donc activé la carte manuellement en cliquant avec le bouton droit de la souris sur son icône dans le Panneau de configuration et en choisissant Enable. Son état est maintenant activé et son statut est "Up".
Puis j'ai couru Disable-NetAdapter
sur la carte réseau. Son statut est maintenant "Désactivé".
Maintenant, le Enable-NetAdapter
La cmdlet a fonctionné comme prévu et a activé la carte réseau.
- Alors, qu'est-ce que 'Not Present' et pourquoi Powershell n'a pas réussi à activer la carte réseau alors qu'elle était dans cet état, alors que je n'ai eu aucun problème à l'activer via l'interface graphique, mais maintenant il semble qu'elle ne fasse que des allers-retours entre Enabled et Disabled ?
- Comment puis-je récupérer la mention "Non présent" si je le voulais ?
- Comment activer une carte réseau avec Powershell lorsqu'elle est dans l'état 'Not Present' ?