Masseprovisjonering FTW

Har du et helt OU med Windows 7, som du trenger å få inn Windows 10 på? Er du lite sugen på å vente fem minutter på provisjonering av hver enkelt maskin? Frykt ikke! Hjelpen er her!

Du kan nemlig hente ut all infoen du trenger for provisjonering fra AD og SCCM:

 

Import-Module 'C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole\bin\ConfigurationManager.psd1'
# obviously change SearchBase to whatever. 
$comp = Get-ADComputer -SearchBase "OU=sb-1,OU=terminalstueklient,OU=hf,OU=clients,DC=uio,DC=no" -Filter {name -like "*"} -Properties MemberOf
Push-Location OSL:
$allcomps = @()
foreach ($ad in $comp) {
    $c = New-Object -TypeName PSObject
    if (-not ($cm = get-cmdevice -Name $ad.name | select name,mac*)) {
        Write-Warning ($ad.name + ' not found in sccm')
    } else {
        $c | Add-Member -MemberType NoteProperty -Name "Name" -Value $cm.Name
        $c | Add-Member -MemberType NoteProperty -Name "MacAddress" -Value ($cm.MacAddress | Select-Object -First 1)
        $c | Add-Member -MemberType NoteProperty -Name "OUPath" -Value (($ad.DistinguishedName.Split(",") | Select-Object -Skip 1) -join ",")
        $c | Add-Member -MemberType NoteProperty -Name "Flavour" -Value "Office" # change as needed
        if ($ad.MemberOf -like "*da-p[0-9][0-9]-clients*") {
            $c | Add-Member -MemberType NoteProperty -Name "DirectAccess" -Value $true
        }
        if ($c.MacAddress) {
            $allcomps += $c
        } else {
            Write-Warning ($ad.name + ' no mac-address')
        }
    }
}
Pop-Location

$allcomps | Export-Clixml -Path C:\scratch\horrible-computers.xml

Maskinene må fremdeles slettes fra AD og SCCM før de kan reprovisjoneres:

Push-Location osl:
Import-Clixml -Path C:\scratch\horrible-computers.xml | ForEach-Object {
    # use the -Force at your own peril
    Get-ADComputer -Identity $_.name | Remove-ADObject -Recursive
    Get-CMDevice -Name $_.Name | Remove-CMDevice
}
Pop-Location

Og så kan du kjøre selve provisjoneringen:

Import-Clixml C:\scratch\horrible-computers.xml | Register-UiOComputer -Verbose

Dette vil provisjonere alle maskinene i én bolk. Men du må fremdeles rundt på hver enkelt maskin og konfigurere BIOS osv ihht. installasjonsveilledningen.

Publisert 21. aug. 2019 10:55 - Sist endret 22. aug. 2019 09:23
Legg til kommentar

Logg inn for å kommentere

Ikke UiO- eller Feide-bruker?
Opprett en WebID-bruker for å kommentere