Jump to content

PowerShell Mutex / Intune App Installation während der ESP


Empfohlene Beiträge

Geschrieben

Hi,

 

ich habe hier ein "Intune App Installations Problem". Während der ESP werden mehrere Apps erzwungen und die Installationen scheitern unregelmäßig. Hierbei handelt es sich überwiegend um "Setup.exe", die zur Laufzeit mehrere MSIs entpacken und dann installieren. Wenn Installationen fehlschlagen und man entsprechende MSI Logs findet, findet sich dort "Another program is being installed. Please wait until that installation is complete, and then try installing this software again.". Dadurch bin ich auf "Mutex" gestoßen.

 

Jetzt zur Frage:

 

Hat es Nachteile, wenn ich in meinen Installations-Scripts am Anfang einfach ein "Mutex" erstelle / belege dann installiere und am Ende den "Mutex" wieder freigebe? Dadurch sollte ja keines der Scripte und somit auch keine Installation parallel laufen. (Ensuring that two PowerShell scripts don’t run at the same time | by Luke Puplett | Luke Puplett’s Personal Blog | Medium) Oder sollte ich "nur" prüfen, ob msiexec gerade einen "Mutex" belegt? (PowerShell Intune Win32 Apps – Avoiding a busy MSI Installer – Azure to the Max)

 

Danke und Gruß

Jan

 

P.S.: So ganz habe ich "Mutex" noch nicht verstanden. Aber im Grunde funktioniert beides in ersten Tests. :-)

Geschrieben
vor 14 Stunden schrieb testperson:

Hierbei handelt es sich überwiegend um "Setup.exe", die zur Laufzeit mehrere MSIs entpacken und dann installieren.

Hatte ich auch mal. Da hat die aufgerufene Setup.exe die Kontrolle mehr oder weniger sofort wieder abgegeben und das PS-Script ist weitergelaufen. Die eigentliche Installation lief dann in einem Sub-Prozess im Hintergrund weiter. Ich hab dann eine Schleife gebaut, die auf die Beendigung dieses Sub-Prozesses gewartet hat, bevor es mit dem Rest weiterging.

 

vor 15 Stunden schrieb testperson:

So ganz habe ich "Mutex" noch nicht verstanden.

Geht mir auch so.

 

vor 15 Stunden schrieb testperson:

Aber im Grunde funktioniert beides in ersten Tests.

Na, denn .... go for it!   🤷🏼‍♂️ 🤟🏼

Geschrieben

Danke für die Antwort.

  

vor 1 Stunde schrieb BOfH_666:

Hatte ich auch mal. Da hat die aufgerufene Setup.exe die Kontrolle mehr oder weniger sofort wieder abgegeben und das PS-Script ist weitergelaufen. Die eigentliche Installation lief dann in einem Sub-Prozess im Hintergrund weiter. Ich hab dann eine Schleife gebaut, die auf die Beendigung dieses Sub-Prozesses gewartet hat, bevor es mit dem Rest weiterging.

 

Das Problem hatte ich auch hin und wieder bis ich "Start-Process" durch

Write-Output "Starting Installation"
$proc = New-Object System.Diagnostics.Process -Property @{
    StartInfo = New-Object System.Diagnostics.ProcessStartInfo("$env:SystemRoot\Temp\Setup.exe")
}
$proc.Start() |
    Out-Null
$proc.WaitForExit()

ersetzt habe.

 

Ich denke ich werde dann mal intensiver mit der Option "Mutex fürs komplette Script" testen. (Oder evtl. doch zum PSAppDeployToolKit wechseln...)

  • Like 1

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...