Windows Betriebssysteme über die Ferne aktivieren
Es gibt Situationen in denen es nicht möglich ist oder schlicht vergessen wurde, Windows- Server oder Clients direkt nach der Installation zu aktivieren. Mit diesem Skript prüfe ich, ob ein Server aktiviert ist oder nicht. In meinem Beispiel arbeite ich mit MAK-Keys.
Es gibt verschiedene Zustände, wenn man den Lizenzstatus eines Systems abfragt. Der Lizenzstatus meines geraden eben aufgesetzen Windows Servers “SRVFiler” ist gleich 5.
0 = “Unlicensed”
1 = “Licensed”
2 = “OOBGrace”
3 = “OOTGrace”
4 = “NonGenuineGrace”
5 = “Notification”
6 = “ExtendedGrace”
Powershell-Skript Windows Server Lizenzstatus abfragen
$RemoteWindows=”SRVFiler“
Get-CimInstance -Computername $RemoteWindows -ClassName SoftwareLicensingProduct | where {$_.PartialProductKey} | select Description,ApplicationId,LicenseStatus
Windows Server Remote aktivieren
Mit diesem Skript aktivieren wir den Windows Server “SRVFiler” per Remote.
Powershell-Skript Windows Server Remote aktivieren
# Variablen
$RemoteWindows=”SRVFiler”
$LicenseKey=”12345-BBBBB-VVVVV-XXXXX-88888″
# Aktivierung
function ActivateWindows{
param(
[string]$key
)
$licensingService = Get-WmiObject -query “select * from SoftwareLicensingService” -ComputerName $env:computername;
$licensingService.InstallProductKey($key);
sleep 20;
$licensingService.RefreshLicenseStatus();
Get-CimInstance -ClassName SoftwareLicensingProduct | where {$_.PartialProductKey} | select Description, LicenseStatus
}
Invoke-Command -Computer $RemoteWindows -ScriptBlock{
param($importedFunc,$importedKey)
[ScriptBlock]::Create($importedFunc).Invoke($importedKey);
} -Args ${function:activateWindows},$licenseKey