DosInAnIcon Xcopy

Antworten
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

DosInAnIcon Xcopy

Beitrag von Der-Matze »

:!:
Hallo zusammen,

ich habe ein Problem damit xcopy in einer DosInAnIcon Sektion zum Arbeiten zu überreden.
Ich habe eine Batch-Datei erstellt, die mir unter anderem das Default-User Profil via xcopy in einen anderen Ordner kopiert.
Alle Befehle, außer xcopy, werden in der Batch-Datei auch anstandslos abgearbeitet. Die Batch-Datei liest nach jedem Befehl das errorlevel aus, und bricht bei Fehlern sofort ab. Der xcopy Befehl läuft jedoch mit einem errorlevel von 0 problemfrei durch, kopiert dabei aber offenkundig nichts.
Um den Fehler einzugrenzen habe ich die Batch-Datei als eingeloggter (lokaler) Administrator auf einem Windows XP System durchlaufen lassen...mit Erfolg.
Die Dateien wurden genau wie geplant kopiert.

Hmm, seltsam.

Um ganz sicher zu gehen dass nicht doch etwas an der Batch faul ist habe ich den xcopy Befehl testweise separat in eine DosInAnIcon Sektion verfrachtet:

Code: Alles auswählen

[Aktionen]

DosInAnIcon_Test

[DosInAnIcon_Test]

	xcopy /H /R /I /E /V /F /Y "C:\Dokumente und Einstellungen\Default User" "C:\Install\Default User"
Ausgabe aus dem Log:

Code: Alles auswählen

Execution of DosInAnIcon_Test
  c:\tmp\_winst.bat saved back
              
              output:
              --------------
              
              C:\Programme\opsi.org\preloginloader\prelogin>xcopy /H /R /I /E /V /F /Y "C:\Dokumente und Einstellungen\Default User" "C:\Install\Default User" 
Hmm, nicht grade aussagekräftig.
Also habe ich den gleichen Befehl, gefolgt von einer Pause, in eine DosBatch Sektion gepackt, um mir die Ausgabe quasi "live" anzuschauen.

Code: Alles auswählen

[Aktionen]

DosBatch_Test

[DosBatch_Test]

	xcopy /H /R /I /E /V /F /Y "C:\Dokumente und Einstellungen\Default User" "C:\Install\Default User" 

       pause
Und siehe da, er macht genau das was er soll. Kopiert den Ordner, macht einen höflichen Knicks und läuft in die Pause.
Ja toll! Freut mich!
Aber warum nicht gleich so?
Also mal zum testen die komplette Batch von der DosInAnIcon Sektion in die DosBatch Sektion geschubst. Hossa, auch das geht.

Bug?
Feature?
Ich-zu-blöd?
Sonnenflecken?

Opsi-Version auf dem Server:3.4
Winst-Version: 4.8.8.1
Prelogoninloader-Version:3.4

Habe das Script erst gestern nach dem Update auf 3.4 geschrieben, und kann deshalb nicht sagen ob es in der Version 3.3.1 funktioniert haben könnte.
Hoffe auf Erleuchtung.
Benutzeravatar
r.roeder
uib-Team
Beiträge: 540
Registriert: 02 Jul 2008, 10:08

Re: DosInAnIcon Xcopy

Beitrag von r.roeder »

Hallo,

vielen Dank für den Hinweis.

Bei der Auswahl:

Bug?
Feature?
Ich-zu-blöd?
Sonnenflecken?

tippe ich zweifelsfrei auf das letzte.

Ich habe es nachgestellt. xcopy arbeitet anscheinend in einer DosInAnIcon-Sektion nicht korrekt, wohl aber in DosBatch (und übrigens auch in WinBatch). Dagegen funktioniert copy auch, wie es sollte, unter DosInAnIcon.

Das hat auch nichts mit der aktuellen opsi-Version zu tun, sondern lässt sich auch mit älteren winst-Versionen reproduzieren.

Ich kann nur spekulieren, dass die Ursache an dem Merkmal der DosInAnIcon-Sektion liegt, dass Standard-Out und Standard-Err abgefangen wird. Das scheint xcopy nicht zu mögen.

Vielleicht kommt jemand mal dazu, Ursachenforschung zu betreiben. Work-Arounds gibt es ja (DosBatch, WinBatch, copy-Befehl in einer File-Sektion).

Etwas googlen erbringt auch Hinweise auf vergleichbares Verhalten von xcopy in anderen Umgebungen.

Nicht viel Erfreuliches. ..

r.röder
opsi support - uib gmbh
For productive opsi installations we recommend maintainance + support contracts which are the base of opsi development.


Wondering who's using opsi? Have a look at the opsi map: http://opsi.org/opsi-map/.
Benutzeravatar
Der-Matze
uib-Team
Beiträge: 102
Registriert: 16 Mär 2009, 11:00

Re: DosInAnIcon Xcopy

Beitrag von Der-Matze »

Da bin ich ja schon mal beruhigt, dass der Fehler von offizieller Stelle reproduziert werden kann.
Ich hab ja schon so einige Sachen mit Opsi realisiert, aber als auf einmal das kopieren von einem Ordner nicht funktionieren wollte habe ich ernsthaft an mir gezweifelt. Um anderen den selben Ärger zu ersparen wäre es meiner Meinung nach sehr sinnvoll dieses Problem im Winst-Handbuch zu erwähnen.
Ich habe einige Zeit investiert um das Problem einzugrenzen, und das sollte man anderen Usern wahrlich ersparen.
Work-Arounds gibt es ja (DosBatch, WinBatch, copy-Befehl in einer File-Sektion).
Die Umsetzung des copy Befehls in OPSI ist leider nicht so mächtig wie xcopy, und daher meines Erachtens kein würdiger Ersatz.
Des Weiteren finde ich es sehr schade, dass es leider keine (mir bekannte) Möglichkeit gibt in einer Files-Sektion einen Ordner zu verschieben (Die Kombo copy + delete zählt nicht ;) ).

Aber das schreibe ich zusammen mit ein paar anderen Vorschlägen wohl noch mal separat in die Kritik, Anregungen und Wünsche Sektion.

Erstmal vielen Dank für die schnelle Antwort, und ich hoffe dass durch dieses Posting anderen Usern der selbe Ärger erspart bleibt, der mir die letzten Tage die Nerven geraubt hat .
Antworten