30
Août
Modifier la description d’un serveur Windows distant avec PowerShell
Comments
Comment modifier la description d’un serveur distant en PowerShell ?
Get-WmiObject ou Get-CimInstance avec -class Win32_OperatingSystem
Au choix, vous pouvez utiliser l’historique commande Get-WmiObject ou la Cmdlet Get-CimInstance apparu en PowerShell 3.0.
Avec la cmdlet « Get-WmiObject » et la class » Win32_OperatingSystem », nous pouvons récupérer une instance WMI (Windows Management Instrumentation) contenant les informations système de notre serveur Windows :
1 2 3 |
. PS D:\> $monObjet=Get-WmiObject -class Win32_OperatingSystem -computername "MonServeur" . |
Objet dont voici les propriétés :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 |
[Singleton, Dynamic, Provider("CIMWin32"), SupportsUpdate, UUID("{8502C4DE-5FBB-11D2-AAC1-006008C78BC7}"), AMENDMENT] class Win32_OperatingSystem : CIM_OperatingSystem { string BootDevice; string BuildNumber; string BuildType; string Caption; string CodeSet; string CountryCode; string CreationClassName; string CSCreationClassName; string CSDVersion; string CSName; sint16 CurrentTimeZone; boolean DataExecutionPrevention_Available; boolean DataExecutionPrevention_32BitApplications; boolean DataExecutionPrevention_Drivers; uint8 DataExecutionPrevention_SupportPolicy; boolean Debug; string Description; boolean Distributed; uint32 EncryptionLevel; uint8 ForegroundApplicationBoost = 2; uint64 FreePhysicalMemory; uint64 FreeSpaceInPagingFiles; uint64 FreeVirtualMemory; datetime InstallDate; uint32 LargeSystemCache; datetime LastBootUpTime; datetime LocalDateTime; string Locale; string Manufacturer; uint32 MaxNumberOfProcesses; uint64 MaxProcessMemorySize; string MUILanguages[]; string Name; uint32 NumberOfLicensedUsers; uint32 NumberOfProcesses; uint32 NumberOfUsers; uint32 OperatingSystemSKU; string Organization; string OSArchitecture; uint32 OSLanguage; uint32 OSProductSuite; uint16 OSType; string OtherTypeDescription; Boolean PAEEnabled; string PlusProductID; string PlusVersionNumber; boolean PortableOperatingSystem; boolean Primary; uint32 ProductType; string RegisteredUser; string SerialNumber; uint16 ServicePackMajorVersion; uint16 ServicePackMinorVersion; uint64 SizeStoredInPagingFiles; string Status; uint32 SuiteMask; string SystemDevice; string SystemDirectory; string SystemDrive; uint64 TotalSwapSpaceSize; uint64 TotalVirtualMemorySize; uint64 TotalVisibleMemorySize; string Version; string WindowsDirectory; uint8 QuantumLength; uint8 QuantumType; }; |
Pour modifier la description de votre serveur, il vous suffit donc de lancer les commandes :
1 2 3 4 5 |
. $monObjet = Get-WmiObject -class Win32_OperatingSystem -computername "NomDeMonServeur" $monObjet.Description = "Description de Mon serveur de production" $monObjet.put() . |
Avec la cmdlet Get-CimInstance vous pouvez effectuer cette opération de 2 manière :
Exemple 1 :
1 2 3 |
. Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName "NomDeMonServeur" | Set-CimInstance -Property @{description="mon Serveur de test"} . |
Exemple2 :
1 2 3 4 |
. $monServeur = Get-CimInstance -ClassName Win32_OperatingSystem -ComputerName "NomDeMonServeur" Set-CimInstance -InputObject $monServeur -Property @{description="mon Serveur de test"} -PassThru . |