Reboot in einem Paket + weiteres Abarbeiten

Post Reply
Jochen_Schmitt
Posts: 304
Joined: 14. Dec 2004, 12:24
Location: Reinheim
Contact:

Reboot in einem Paket + weiteres Abarbeiten

Post by Jochen_Schmitt » 05. Jul 2005, 18:39

Hallo zusammen,

ich möchte abhängig von der Situation in der Setup.inf einen Reboot einleiten bzw. das Paket mit einer Reboot verlassen. Dies soll mittlerweile über SetReboot 1 möglich sein. Jetzt wäre es jedoch schön, wenn das gleiche Paket nach erfolgtem Reboot noch einmal angefaßt wird, um den Rest durchzuführen der den Reboot einer zuvor installierten Komponente benötigt. Ist das halbwegs sauber realisierbar bzw. hat jemand etwas ähnliches bereits umgesetzt?

Danke im voraus.

Grüße
Jochen Schmitt

HeikoLeupolz
Posts: 128
Joined: 14. Dec 2004, 13:37
Location: Pfronten
Contact:

Post by HeikoLeupolz » 06. Jul 2005, 08:38

Hallo,

im Prinzip ist das auf die Art mit dem PMClient realisiert. Werden Patches installiert, läuft dieser ja auch ein 2. mal falls es abhängige Patches gibt. Realisiert ist das ganze über die Revision, wobei es schon lange her ist dass ich mir das Paket mal genauer angesehen habe.
Viele Grüße

Heiko Leupolz

Heumer
Posts: 16
Joined: 15. Dec 2004, 08:05
Contact:

Post by Heumer » 28. Sep 2005, 17:23

Hallo,

wenn ich das Problem richtig verstehe, soll das Paket zwei mal initiert werden. Beim ersten mal soll je nach Erfüllen einer Bedingung etwas in dem Paket ausgeführt werden (z.B. Deinstallation einer Vorversion). Dann soll dieses Paket mit einem Reboot verlassen werden. Beim zweiten mal soll der Rest der Setup.inf durchgeführt werden (z.B. Install der aktuellen Version) und wieder ein Reboot durchgeführt werden.

Hier mal ein Ausschnitt aus einer Setup.inf, wie wir solche Fälle lösen:

[CHECKOLDVERSION]
If DoesRegKeyExist ("HKLM,SOFTWARE\AOK Westfalen-Lippe\Adobe Acrobat Writer\4.0\Setup,Version") == "1" Then "UNINSTALLWRITER4" Endif
If DoesRegKeyExist ("HKLM,SOFTWARE\AOK Westfalen-Lippe\Adobe Acrobat Writer\5.0\Setup,Version") == "1" Then "UNINSTALLWRITER5" Endif
If %Shutdownstatus% == "1" Then "Reg:Shutdown" EndIf
If %Shutdownstatus% == "1" Then "Exit" EndIf

[Exit]
Abort

[UNINSTALLWRITER4]
DeletePrinter ("%PrintServer%", "Acrobat Distiller")
DeletePrinter ("%PrintServer%", "Acrobat PDFWriter")
call \\%FSN%\%SWV%\apps\user\setup.exe "%Src%\Oldsetup\writer4-remove.inf" /aw /u /s1
Set Shutdownstatus=1


Der Befehl Abort sorgt nun dafür, dass das Paket nicht unter dem angegebenen MachineKeyName registriert wird, so dass bei der nächsten Initialisierung des SWdepot das Paket ein zweites mal aufgerufen wird.
Diesmal ist die Bedingung nicht mehr erfüllt, also der Wert der Variable Shutdownstatus ist nicht "1". Der Rest der Setup.inf wird verarbeitet und das Paket wird registriert.

jbeimel
Moderator
Moderator
Posts: 642
Joined: 15. Dec 2004, 09:16
Contact:

Post by jbeimel » 29. Sep 2005, 09:25

[Exit]
Abort
ist fast OK, denn das gibt eine (gewollte) Fehlermeldung aus. Besser ist

Code: Select all

&--91;Exit&--93;
AbortSilent
Jens Beimel
Principal Consultant


Matrix42 AG
info@matrix42.de
http://www.matrix42.de

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 AG.

Heumer
Posts: 16
Joined: 15. Dec 2004, 08:05
Contact:

Post by Heumer » 29. Sep 2005, 10:02

Ich bin davon ausgegangen, dass das Paket im Silent-Mode (/s1 etc.) installiert wird. Ist dies nicht der Fall kommt es wie beschrieben bei einem einfachen "Abort" zur Meldung und bei einem "Abortsilent" nicht.

AFiedler
Posts: 265
Joined: 15. Nov 2005, 16:02
Location: Köln
Contact:

Post by AFiedler » 16. May 2006, 10:28

Hallo stehe jetzt auch vor dem Problem das ich nach der Installation einer Software erst einmal einen Reboot brauche. Ich habe das auch so mit dem Abort gelöst, jetzt weiß ich aber nicht wie ich den Reboot hinbekomme. Kann mir da jemand weiterhelfen?

S.Beckmann
Posts: 317
Joined: 15. Dec 2004, 07:34
Location: Wabern (Region Bern)
Contact:

Post by S.Beckmann » 16. May 2006, 10:58

Hallo stehe jetzt auch vor dem Problem das ich nach der Installation einer Software erst einmal einen Reboot brauche. Ich habe das auch so mit dem Abort gelöst, jetzt weiß ich aber nicht wie ich den Reboot hinbekomme. Kann mir da jemand weiterhelfen?
Mit dem Shutdown Befehl...
[b]Stefan Beckmann[/b]
Senior System Engineer

[color=green]unico[/color] data ag
Südstrasse 8a
CH-3110 Münsingen
mailto: s.beckmann [at] unico [dot] ch

[size=75][color=red][b]Disclaimer[/b][/color]: Die Teilnahme an diesem Forum ist freiwillig, und deshalb sind die hier veröffentlichten Aussagen und Meinungen nicht notwendigerweise die der [color=green]unico[/color] data ag.[/size]

AFiedler
Posts: 265
Joined: 15. Nov 2005, 16:02
Location: Köln
Contact:

Post by AFiedler » 16. May 2006, 11:02

und der lautet?

S.Beckmann
Posts: 317
Joined: 15. Dec 2004, 07:34
Location: Wabern (Region Bern)
Contact:

Post by S.Beckmann » 16. May 2006, 11:03

In einem CMD shutdown /?

Empirum hat im Moment keine solche Funktion :evil:
[b]Stefan Beckmann[/b]
Senior System Engineer

[color=green]unico[/color] data ag
Südstrasse 8a
CH-3110 Münsingen
mailto: s.beckmann [at] unico [dot] ch

[size=75][color=red][b]Disclaimer[/b][/color]: Die Teilnahme an diesem Forum ist freiwillig, und deshalb sind die hier veröffentlichten Aussagen und Meinungen nicht notwendigerweise die der [color=green]unico[/color] data ag.[/size]

AFiedler
Posts: 265
Joined: 15. Nov 2005, 16:02
Location: Köln
Contact:

Post by AFiedler » 16. May 2006, 11:23

hätte vielleicht sagen sollen das wir Win2k haben und dort die shutodwn.exe nicht mit im Lieferunfang ist. Ich werds aber einfach mal mit der shutdown.exe von nem XP Rechner probieren...
mpirum hat im Moment keine solche Funktion Evil or Very Mad
Dann wirds aber mal Zeit :)

S.Beckmann
Posts: 317
Joined: 15. Dec 2004, 07:34
Location: Wabern (Region Bern)
Contact:

Post by S.Beckmann » 16. May 2006, 11:25

Das sollte aber gehen. Denn die Shutdown.exe gibt es schon lange und ist auch im Resource Kit für Win2000 dabei.
[b]Stefan Beckmann[/b]
Senior System Engineer

[color=green]unico[/color] data ag
Südstrasse 8a
CH-3110 Münsingen
mailto: s.beckmann [at] unico [dot] ch

[size=75][color=red][b]Disclaimer[/b][/color]: Die Teilnahme an diesem Forum ist freiwillig, und deshalb sind die hier veröffentlichten Aussagen und Meinungen nicht notwendigerweise die der [color=green]unico[/color] data ag.[/size]

User avatar
Hendrik_Ambrosius
Moderator
Moderator
Posts: 7966
Joined: 13. Dec 2004, 23:10
Location: Adendorf/Lüneburg

Post by Hendrik_Ambrosius » 16. May 2006, 12:36

Von dem shutdown-call innerhalb eines Pakets kann ich nur abraten, weil das Paket nicht weiß ob noch weiteres Installationen danach anstehen.
Dann würde das SWDEPOT nämlich gleich das nächste Paket anziehen und der Reboot der Vorgängerpakets würgt die Installation mit nicht vorhersehbaren Folgen ab.
Der Weg mit SETREBOOT, den Versionen und ggf. einem "Discontinue=1" im SWDEPOT ist vorzuziehen!
Hendrik Ambrosius / Senior Presales Consultant
Mobile: +49 172 408 4447 | hendrik.ambrosius@matrix42.com
Matrix42 GmbH | Elbinger Straße 7 | 60487 Frankfurt am Main | Germany | www.matrix42.com

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 or of the support team.

jbeimel
Moderator
Moderator
Posts: 642
Joined: 15. Dec 2004, 09:16
Contact:

Post by jbeimel » 16. May 2006, 12:46

Empirum hat im Moment keine solche Funktion
Na das halte ich aber für ein Gerücht... ;-)

In der Setup.inf Reboot=1 setzen
Im Configurator bei den Paketeigenschaften den Haken setzen bei "Installation weiterer Pakete nicht fortsetzen"

Das geht natürlich nicht bei einem Abbruch (ungewollt oder mittels Abort). Da bietet sich hier eher folgendes an:
Das Paket selbst hat z.B. Revision 1
in die Setup.inf statt dem Abort

Code: Select all

Set Revision=0
Exit
die Setup.inf wird "erfolgreich" beendet, ein Reboot ausgeführt, beim nächsten Start von SwDepot.exe die gleiche Setup.inf wieder angezogen.
Jens Beimel
Principal Consultant


Matrix42 AG
info@matrix42.de
http://www.matrix42.de

Disclaimer: I participate in this forum on a voluntary basis. Views expressed are not necessarily those of Matrix42 AG.

Hasengrube
Posts: 58
Joined: 12. Sep 2009, 22:11
Contact:

Re: Reboot in einem Paket + weiteres Abarbeiten

Post by Hasengrube » 14. Apr 2016, 14:39

...um mal einen alten Thread wieder auszugraben - das Thema war hier gerade aktuell...

Hier noch ein Tipp der für uns besser passt weil unabhängig von der derzeiten Version/Revision/Paketname - ich versuch die Pakete möglichst global zu halten - macht das kopieren einfacher.

Mit

Code: Select all

Set Revision=.
braucht man sich auch nicht um die derzeitigen Revisionsnummern zu kümmern - mit ein paar kleinen Änderungen in der IfAbfrage auch kopierbar für andere Pakete.

Also als komplettbeispiel:

Code: Select all


[Set:Initialisierung]
AddMeter -1

;***Prüfung ob erster Durchlauf - Wenn ja erst dann kommt Durchlauf1 - wenn nein Durchlauf2
Set V_WERT=%%HKLM,SOFTWARE\$Matrix42Packages$\%DeveloperName%\%ProductName%\%Version%\Setup,Revision%%
ReplaceEnv V_Wert 
IF "%V_WERT%" == "." Then "Set:Durchlauf1" Else "Set:Durchlauf2" EndIf

[Set:Durchlauf1]
;***....halt das drin was zu tun ist
ErrorLogMsg Hier könnte man noch etwas loggen wenn man möchte wie Durchlauf 1 gestartet
Set Revision=.

[Set:Durchlauf2]
;***....halt das drin was zu tun ist
ErrorLogMsg Hier könnte man noch etwas loggen wenn man möchte wie Durchlauf 2 gestartet
Den Codeschnippsel kann man dann quer durch alle Pakete/Revisionen nutzen ohne ihn anzupassen.

Grüße Uwe

[EDIT] 15:52
Was im Editor gut funktioniert hat - Revision auf -1 setzen - klappt beim Agent leider nicht. -1 ist für den Höher als 0. Lösung dafür dann Relativ simpel - einfach einen . setzen als Revision". Das ist dann in der Sortierung für den Agent korrekt.
Quelltext wurde korrigiert :oops: :wink:
[/EDIT]

Post Reply

Return to “Paketierung”

Who is online

Users browsing this forum: Ahrefs [Bot] and 9 guests