Seite 1 von 1

Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 27 Jun 2018, 15:42
von l.gremme
Hallo zusammen,

vielleicht habt ihr eine Idee, wie ich das Netboot-Produkt anpassen muss, sodass der OPSI-Client-Agent nicht mit installiert wird.
Verzeichnis /opsi
- postinst.cmd?
- Verzeichnis postinst.d?

Viele Grüße
Lars

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 08 Jul 2018, 16:25
von bernd670
Hallo,

ich habe mir als Beispiel mal das Win10-x64 Paket angeschaut.

In opsipreparelib.py (zeile 244 - 246) wird die productProperty install_opsi-client-agent ausgewertet, wenn die nicht existiert wird sie auf true gesetzt. Leg sie doch einfach mal als Bool an und weise ihr false zu, wenn das funktioniert, ist es wahrscheinlich der einfachste Weg.

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 16 Jul 2018, 18:51
von l.gremme
Hallo Bernd,

entschuldige, ich sehe deinen Beitrag gerade erst.
Ich habe auch manuell versucht, dort in den Bibliotheken bzw. Dateien etwas zu verändern.
Heute musste ich feststellen, es gibt einen noch einfacheren Weg:
In der unattend.xml den Bereich:

Code: Alles auswählen

<FirstLogonCommands>
<SynchronousCommand wcm:action="add">
<RequiresUserInput>false</RequiresUserInput>
<Description>Opsi tasks</Description>
<Order>1</Order>
<CommandLine>cmd.exe /c #@winpe_partition_letter*#:\opsi\postinst.cmd</CommandLine>
</SynchronousCommand>
</FirstLogonCommands>
auszukommentieren. Genau hier verbirgt sich das automatische Setup des Client-Agents und im Anschluss wird vom Agent die WinPE-Partition gelöscht.

An dieser Stelle kommt bei mir jetzt ein kleines PowerShell-Skript zum Einsatz, aus wenigen Zeilen Code.
Auf Wunsch kann ich das nachliefern.

VG Lars

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 16 Jul 2018, 19:36
von bernd670
Hallo,

das mit dem Auskommentieren war auch meine erste Idee, aber durch das script postinst.cmd wird ja mehr gemacht als nur die Installation des opsi_client_agent.

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 16 Jul 2018, 19:58
von l.gremme
Die postinst.cmd wird für mich bei der Installation des Client-Agents mit ausgeführt, da dort fest das Laufwerk C: mit entsprechenden Variablen verankert ist. Spätestens wenn dort mehrere Dateien von A nach B kopiert werden.

Um hier Gewissheit zu bekommen, muss ich mal eine Testinstallation durchführen und gezielt auf die WinPE-Partition schauen, was dort nachher noch an Dateien vorhanden ist.

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 17 Jul 2018, 06:45
von uncle_scrooge
Eine andere Möglichkeit wäre, den postinst-Mechanismus selber zu nutzen.
Im Netboot-Produkt in ./opsi/postinst.d einen Batch (say 49_del_opsi_installer.cmd) erstellen.
Der wiederum per del c:\opsi.org\tmp\50_opsi-client-agent.cmd das Installationsskript vor Ausführung putzt.

Re: Netboot-Produkt ausrollen ohne Client-Agent

Verfasst: 17 Jul 2018, 08:28
von l.gremme
uncle_scrooge hat geschrieben:Eine andere Möglichkeit wäre, den postinst-Mechanismus selber zu nutzen.
Im Netboot-Produkt in ./opsi/postinst.d einen Batch (say 49_del_opsi_installer.cmd) erstellen.
Der wiederum per del c:\opsi.org\tmp\50_opsi-client-agent.cmd das Installationsskript vor Ausführung putzt.
Auch eine gute Idee, habe ich jetzt nicht getestet.

Meine Lösung bisher:
psdrive.ps1:

Code: Alles auswählen

$peletter = Get-PSDrive | ? { $_.Description -eq 'WINPE' } | Select -ExpandProperty Name
Remove-Partition -DriveLetter $peletter -Confirm:$false

$sysletter = Get-PSDrive | ? { $_.Description -eq 'System' } | Select -ExpandProperty Name
$size = Get-PartitionSupportedSize -DriveLetter $sysletter
Resize-Partition -DriveLetter $sysletter -Size $size.SizeMax
unattend.xml

Code: Alles auswählen

<FirstLogonCommands>
				<SynchronousCommand wcm:action="add">
					<RequiresUserInput>true</RequiresUserInput>
					<Description>Laufwerk konfigurieren</Description>
					<Order>2</Order>
					<CommandLine>cmd /c %WINDIR%\System32\WindowsPowerShell\v1.0\powershell.exe -File "%SYSTEMDRIVE%\psdrive.ps1"</CommandLine>
				</SynchronousCommand>
			</FirstLogonCommands>
Danke für Eure Hilfe und VG Lars