Fehler bei mehreren Paketen mit "opsi-template-with-admin"
Verfasst: 14 Aug 2015, 14:56
Im opsi-winst-/opsi-script-Handbuch ist beschrieben, wie man mit Hilfe von "opsi-template-with-admin" opsi-Pakete baut, die auch dann funktionieren, wenn die darin enthaltene Installation nicht mit dem SYSTEM-Account funktioniert, sondern einen lokal angemeldeten Administrator braucht. (https://download.uib.de/opsi_stable/doc ... ocal-admin)
Das funktioniert auch total super ... solange man nur ein Paket hat, das diesen Mechanismus nutzt.
Wenn man aber zwei oder mehr Pakete, die diesen Mechanismus nutzen, gleichzeitig auf "setup" stellt, gibt es Chaos. Das liegt daran, dass mehrere Pakete versuchen, sich an der gleichen Stelle (nämlich: "[HKLM\SOFTWARE\opsi.org\winst] RebootFlag") zu merken, in welchem Stadium der Installation sie sind.
Lösungsvorschlag:
Als Registrywert sollte nicht "RebootFlag" verwendet werden, sondern "RebootFlag-%installingProdName%". Das erfordert m. E. nur an zwei Stellen eine Änderung im Code:
Schönen Gruß
Holger
Das funktioniert auch total super ... solange man nur ein Paket hat, das diesen Mechanismus nutzt.
Wenn man aber zwei oder mehr Pakete, die diesen Mechanismus nutzen, gleichzeitig auf "setup" stellt, gibt es Chaos. Das liegt daran, dass mehrere Pakete versuchen, sich an der gleichen Stelle (nämlich: "[HKLM\SOFTWARE\opsi.org\winst] RebootFlag") zu merken, in welchem Stadium der Installation sie sind.
Lösungsvorschlag:
Als Registrywert sollte nicht "RebootFlag" verwendet werden, sondern "RebootFlag-%installingProdName%". Das erfordert m. E. nur an zwei Stellen eine Änderung im Code:
Code: Alles auswählen
--- setup.ins 2012-09-28 20:26:34.000000000 +0200
+++ setup.ins.new 2015-08-14 14:44:07.395829868 +0200
@@ -77,7 +77,7 @@
comment "handle Rebootflag"
Set $WinstRegKey$ = "HKLM\SOFTWARE\opsi.org\winst"
-Set $RebootFlag$ = GetRegistryStringValue32("["+$WinstRegKey$+"] "+"RebootFlag")
+Set $RebootFlag$ = GetRegistryStringValue32("["+$WinstRegKey$+"] "+"RebootFlag-%installingProdName%")
comment "some paths required"
Set $AutoBackupKey$ = $WinstRegKey$+"\AutoLogonBackup"
@@ -248,7 +248,7 @@
[Registry_SaveRebootFlag]
openKey [$WinstRegKey$]
-set "RebootFlag" = "$RebootFlag$"
+set "RebootFlag-%installingProdName%" = "$RebootFlag$"
[Files_copy_Setup_files_local]
copy -s %ScriptPath%\localsetup\*.* $LocalFilesPath$
Holger