PowerShell Automatische Installation via PowerShell

Captium

Cadet 4th Year
Registriert
Apr. 2017
Beiträge
81
Hallo zusammen,

ich hoffe jemand kann mir helfen.
Ich will mit PowerShell Skripten die Installation bzw. die Konfiguration nach der Installation mit PowerShell automatisieren.
Bedeutet ich will automatisch den Computernamen setzen, Domainjoin, jegliche Grundeinstellunge z.b. Energieeinstellungen usw.
Außerdem noch Programme wie Acrobat Reader, Office etc. installieren.

Ich kenne mich etwas mit PowerShell aus aber bin ich Profi.
Über eine grobe Anleitung, Ratschläge, Quellen würde ich mich freuen.

Beste Grüße
Captium
 
Tue dir selbst einen Gefallen und les dich ins Thema Microsoft Deployment Toolkit ein. Damit kannst du das alles abbilden!
 
Ich habe etwas ähnliches mit Workflows in Powershell gemacht, damit konfiguriere ich einen Core Server. Der Vorteil von Workflows besteht darin, dass das Skript über Reboots hinaus arbeitet und man viel parallelisieren kann.
Auf der anderen Seite sieht es für mich aus, als suchst du eher ein Client Management Tool.
 
Ja ich will Clients managen, aber mit selbst dafür geschrieben Skripten. Einfach für Übungszwecke.
 
Diese Optionen gibt es (unter anderem):
- *-PSSession
Erstellt, verwaltet und nutzt Remote Sessions. Damit verbindet man seine PS-Konsole mit einem anderen Host.
- Parameter -ComputerName
Viele (nicht alle) cmdlets stellen einen Parameter -ComputerName bereit. Wenn man den angibt, dann interagiert das cmdlet mit dem benannten PC, nicht mit demjenigen, wo es ausgeführt wird.
- Cmdlet Invoke-Command
Das Schweizer Taschenmesser. Nimmt einen Computernamen und eine Scriptdatei oder einen Scriptblock, überträgt das an den benannten Host und führt den Code dort aus. Wichtig, insbesondere bei Scriptblocks: Variablen, die man im Scriptblock übergibt, werden AUF DEM ZIEL aufgelöst und insbesondere NICHT auf dem Host, wo man den Befehl ausführt; das ist also grundlegend anders, als man es sonst unter PS kennt. Wenn man Parameter an den Zielhost übergeben will, dann muß man einen Scriptblock im "erweiterten Format" bauen (mit PARAM-Block).

Außerdem wirst Du, wenn Du nicht schon hast, auf dem ausführenden Host die RSAT Tools benötigen. Die beinhalten jede Menge Verwaltungscmdlets, sind allerdings teilweise nur für Server geeignet (sie laufen auf dem Client, aber man muß mit -computerName einen Windows-Server angeben). Insbesondere gibt es dort drin das ActiveDirectory-Modul. Damit kann man sein AD mehr oder weniger vollständig verwalten.

Für die Imageverwaltung gibt's das DISM-Modul - das ist einfach eine Schnittstelle zur Komponentenverwaltung. Damit kann man Features, Rollen und Windows-Pakete verwalten (zB Updates installieren) wenn diese im MSU- oder im CAB-Format vorliegen.

Nicht für alles gibt's aber eine PS-Schnittstelle. Prozesse lassen sich bei Bedarf mit *-Process verwalten, starten und auch beenden - damit kannst Du unter anderem Setuproutinen im Hintergrund starten (mit den richtigen Kommandozeilenoptionen für automatische Installation).


NB: für die Verwaltung der Clients solltest Du nicht die Möglichkeiten von GPOs vergessen. Auch damit läßt sich Software zuweisen und Einstellungen vornehmen. Im Hinblick darauf, daß das dann zentral verwaltbar ist, ist das jeder "Client-Installation" vorzuziehen: denn dann zieht einfach die GPO auf den (neuen) Client und Du hast nicht das Problem, einen Client potentiell übersehen zu können.
 
Zurück
Oben