none
DP als Quellordner verwenden RRS feed

  • Frage

  • Hallo,

    ich möchte auf meinen Clients ein Skript (Batch) ausführen, welche weitere Batch-Daten zum starten bringt. Nun möchte ich das "Start-Skript" auf die Clients verteilen. Dort soll es sich starten und nun soll der Client sich an den DP wenden, um von dort weiter mit den Batch-Daten arbeiten zu können. Auf dem DP gibt es einen Ordner, in dem sich alle Skripte befinden mit den jeweiligen Ausführungen dahinter. Z.B. kümmert sich ein Skript darum, dass gewisse Registry-Einträge auf dem Client gesetzt werden...und so hat jedes Skript eine andere Aufgabe. Gestartet wird dieses Skript von dem "Start-Skript", welches auf den Client verteilt worden ist. Nun soll der Client aber nicht jedes mal jegliche Skripts usw. vom DP lokal herunterladen, da das Skript jeden Tag ausgeführt wird, sondern soll direkt vom DP aus die Aktionen durchführen. Kann ich so etwas realisieren?

    Montag, 17. August 2015 09:23

Alle Antworten

  • da das Skript jeden Tag ausgeführt wird

    Das klingt dann aber mehr nach einem Computer Startup Skript und nicht zwingend nach ConfigMgr. Wieso muss es zwingend ConfigMgr sein?
    Außerdem klingt "Batch, die eine Batch startet" wie IT vor 20 Jahren. Würden da evtl GPOs/GPPs nicht mehr Sinn machen? Oder Compliance Settings? Nur weil ConfigMgr etwas irgendwie kann, muss es nicht das beste Mittel sein. Was soll denn genau auf den Rechnern passieren?

    Torsten Meringer | http://www.mssccmfaq.de

    Montag, 17. August 2015 11:03
    Beantworter
  • Es wird bei den Batch-Daten bleiben, auch wenn es IT von vor 20 Jahren bedeutet :/

    Auf dem Rechner selbst soll nur die Start-Batch bereitgestellt werden, welche dann entsprechend vom DP aus nach und nach alle anderen ausführt. Es geht zum größten Teil um Registry-Einträge die gesetzt werden, sofern diese nicht vorhanden sind. Diese Datei wird bei jedem Systemstart ausgeführt.

    Da der Ordner mit den Batch-Daten und dazugehörigen Programmdaten in etwa 80MB groß ist, soll diese nicht jedes mal auf den Client heruntergeladen werden, sondern die Abfrage soll über den DP laufen.

    Montag, 17. August 2015 11:33
  • Dann die Option im Paket auswählen, dass es auf ein Package Share kopiert werden soll und im Deployment "run from DP". In der Batch dann mit %~dp0 das aktuelle Verzeichnis angeben. 

    Torsten Meringer | http://www.mssccmfaq.de

    Montag, 17. August 2015 12:35
    Beantworter
  • Nimm die Funktion: "copy the content in this package to a package share on distribution points". Dann solle es klappen.

    Edit: Torsten war schneller! :)


    http://www.clientmgmt.de


    Montag, 17. August 2015 12:38
  • Wie kann ich mir den Befehl %~dp0 vorstellen? Gebe ich diesen einfach an oberster Stelle in der Batch-Datei hinzu? Was genau macht dieser Befehl? Nun habe ich verschiedene Standorte, die alle die selben Batch-Dateien auf ihrem zugeordnenten DP abfragen sollen. Muss ich dann für jeden Standort entsprechend eine eigene Start-Batch und jeweils ein Paket für jeden Standort erstellen?
    Wie genau sieht das dann z.B. mit dem %~dp0 aus, gerade in Bezug auf das Verzeichnis.
    Mittwoch, 19. August 2015 08:55
  • Mittwoch, 19. August 2015 09:17
  • Mh, ok. Kann mir jmd noch was zu meinen anderen Fragen sagen?
    Mittwoch, 19. August 2015 09:43
  • Wie bereits geschrieben: %~dp0 wird durch das Verzeichnis ersetzt, aus dem die Batch aufgerufen wird. Es kann also zB c:\temp\ oder \\server\share\folder\ sein. Somit ist es also egal, ob die Batch auf einem DP gestartet  oder erst in den Cache heruntergeladen wird. Wenn Du für jeden Standort eigene "Parameter" brauchst, dann würde das erst einmal ein Paket bzw Program pro Standort bedeuten, oder aber die Intelligenz, was wo ausgeführt werden soll muss in der Batch landen.

    Torsten Meringer | http://www.mssccmfaq.de

    Mittwoch, 19. August 2015 09:49
    Beantworter
  • Um jetzt mal den Ablauf abzuschließen. Ich erstelle ein Paket. Sage "Dieses Paket enthält Quelldatein". Wähle entsprechend den Dateipfad dahin aus. Sage, dass es sich um ein Standardprogramm handelt. Gebe dem ganzen einen Namen und unter Befehlszeile durchsuche ich den Quellordner und wähle die start.bat aus (muss an dieser Stelle sonst noch was in die Befehlszeile?). Den Startordner lasse ich leer (die Batch soll ja nirgends zu sehen sein, oder kommt an dieser stelle noch was hin?). Das ganze wird mit Adminrechten ausgeführt. Mehr gebe ich doch in dieser Übersicht (Standardprogramm) nicht an. Ich klicke den Wizzard entsprechend bis zum Ende durch. Das Programm ist abgeschlossen. Nun gehe ich auf die Eigenschaften des Paketes unter 'Datenzugriff'. Dort gibt es den Punkt "Den Inhalt in diesem Paket in eine Paketfreigabe auf Verteilungspunkten kopieren". Diesen hake ich an und gebe darunter noch den Freigabename an, den ich zuvor auf dem DP angelegt habe. Es gibt noch den Punkt unter 'Datenquelle' "Inhalt dauerhaft in Clientcache speichern". Das wäre ja an und für sich auch eine Option, oder? Nun stelle ich das Paket bereit. Sage als Zweck 'erforderlich', lege den Zeitplan fest und komme zum Punkt 'Verteilungspunkte'. Dort steht unter Bereitstellungsoption u.a. "Inhalt vom Verteilungspunkt herunterladen und lokal ausführen oder Inhalt vom Verteilungspunt ausführen". Ich wähle dann ja letzteres aus, richtig? Muss ich an dieser Stelle noch sonstiges einstellen? So, viel Text. Danke fürs drüberschauen und korrigieren.
    Donnerstag, 20. August 2015 07:46
  • wähle die start.bat aus (muss an dieser Stelle sonst noch was in die Befehlszeile?) --> nein

    Mehr gebe ich doch in dieser Übersicht (Standardprogramm) nicht an --> richtig

    Diesen hake ich an und gebe darunter noch den Freigabename an, den ich zuvor auf dem DP angelegt habe --> nein. Die Freigabe wird automatisch erstellt

    Es gibt noch den Punkt unter 'Datenquelle' "Inhalt dauerhaft in Clientcache speichern". Das wäre ja an und für sich auch eine Option, oder? --> Dann wird es aber heruntergeladen und nicht vom DP ausgeführt. Du wolltest doch vom DP starten?

    Ich wähle dann ja letzteres aus, richtig? --> Richtig.


    Torsten Meringer | http://www.mssccmfaq.de

    Donnerstag, 20. August 2015 08:29
    Beantworter
  • Ich hab jetzt alles so eingestellt, allerdings funktioniert es leider nicht. Wenn ich die Bat lokal starte, läuft es perfekt durch. Ich habe unter 'Datenzugriff' noch den Freigabenamen auf dem DP mit angegeben, da ich in meiner Start-Bat ja den Serverpfad mit den entsprechenden Unterordnern angeben muss. Ich habe also in meiner Starbat entsprechend \\serverDP\NeuerOrdner angeben, in diesem liegen auch nach dem Verteilen alle Daten aus dem Quellordner drin. Das funktioniert auch soweit. Nur führt sich die Bat-Datei auf dem Client nicht aus, es passiert nichts.
    Donnerstag, 20. August 2015 09:13
  • Ich habe also in meiner Starbat entsprechend \\serverDP\NeuerOrdner angeben
    Und genau das ist nicht nötig, wenn ~dp0 verwendet wird.
    Was steht denn im execmgr.log? Wird die Batch ausgeführt?

    Torsten Meringer | http://www.mssccmfaq.de

    Donnerstag, 20. August 2015 09:44
    Beantworter