There have been times where I have run into issues where the SCCM client doesn’t install on a new server or I am trying to finish a server setup quickly and I don’t want to wait for SCCM to do it automatically. Here is a little snip that will let you put a list of server or workstions into an array and it will copy the client locally and then run user powershell to install SCCM client.
Script:
#Check for Creds and ask for them if they aren't found
if (!($Creds)) {$creds = get-credential -Message "Enter your Domain Admin Creds"}
#Change this path, this should be pretty close to yours
$ClientPath = "\\SCCM_Server_Name\SMS_SITE\Client\ccmsetup.exe"
#List of Servers goes here
$servers = (
"Server1",
"Server2",
"Server3"
)
#This will clear any PSSessions
Remove-PSSession *
#Creates a PSSession for each server defined above and copies the most current client .exe locally
foreach ($server in $servers) {
$s = New-PSSession -ComputerName $server -Credential $Creds
Copy-Item $ClientPath -Destination "C:\ccmsetup.exe" -ToSession $s -Force
Remove-PSSession $s
}
#Runs the client installer
$s = New-PSSession -ComputerName $servers -Credential $Creds
Invoke-Command -Session $s -ScriptBlock {
cd C:\ ;
.\ccmsetup.exe /mp:SCCM_Server_Name /logon SMSSITECODE=AUTO FSP=SCCM_Server_Name;
}