Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Aufruf einer Batch-Datei auf einem anderem PC im Netzwerk, die eine EXE-Datei auf einem Netzlaufwerk startet

Frage Netzwerke Netzwerkgrundlagen

Mitglied: imebro

imebro (Level 2) - Jetzt verbinden

27.10.2006, aktualisiert 30.10.2006, 13339 Aufrufe, 14 Kommentare

Hallo - ich schon wieder

Nachdem ich mit Euren gestrigen Tipps einen super Erfolg hatte, bitte ich Euch nochmal um Hilfe.

Es geht wieder um ein Programm-Update.

Diesmal befindet sich die Update-Datei (Update.exe) auf einem Serverlaufwerk und muss von jedem Client aus gestartet werden, damit der jeweilige Client upgedatet wird.

Ich möchte nun eine Batch-Datei schreiben, die das von meinem Arbeitsplatz aus oder vom Server aus automatisiert.

Also... jeder einzelne Client muss die Datei "S:\OH\Update\Update.exe" starten.

Es handelt sich um etwa 15 PCs, die so upgedatet werden müssen und alle befinden sich im Netzwerk in der gleichen Domaine.

--> Ich vermute, dass ich eine Batch-Datei haben müßte, die auf jedem Client wiederum eine Batch-Datei startet. Und diese enthält
dann den Start der o.g. Update.exe

Habt Ihr Tipps, wie beide Batch-Dateien aussehen müßten?

Vielen Dank schonmal & Grüsse,
Ingo
Mitglied: bastla
27.10.2006 um 11:14 Uhr
Hallo Ingo!

Schau Dir doch einmal PsExec an - insbesondere auch die Option "@file" zum bequemen Festlegen der Zielrechner.

HTH
bastla
Bitte warten ..
Mitglied: imebro
27.10.2006 um 12:10 Uhr
Danke bastla,

bin nur nicht so fit in englisch

Ich denke mal, dass es gar nicht so problematisch sein dürfte, eine Datei zu starten, die auf einem anderen PC im Netzwerk liegt.

Leider startet mein Versuch nicht diese Datei auf dem anderen PC sondern auf meinem eigenen.

Gruss
Ingo
Bitte warten ..
Mitglied: bastla
27.10.2006 um 13:58 Uhr
Hallo Ingo!

Mit PsExec müsstest Du etwa folgende Befehlszeile verwenden:

01.
psexec \\Zielrechner -u test\Administrator -d -n 5 \\UpdateServer\UpdateFreigabe\OH\Update\Update.exe
bzw für alle in der Datei "Clients.txt" gespeicherten Rechner

01.
psexec @Clients.txt -u test\Administrator -d -n 5 \\UpdateServer\UpdateFreigabe\OH\Update\Update.exe
Anmerkungen:
Die obigen Befehlszeilen gehen von einem Server "UpdateServer" mit passender Freigabe "UpdateFreigabe" aus - in Deiner Pfadangabe wäre analog dazu S: auf "\\UpdateServer\UpdateFreigabe" gemapped, was aber beim Remote-Zugriff vermutlich nicht gewährleistet wäre.

Gestartet wird das Update (auf dem Zielrechner) unter dem Benutzeraccount des Administrators der Domäne "test.local" ("-u test\Administrator"); das Passwort wird beim Ausführen von psexec abgefragt.

Die Angabe von "-d -n 5" beschleunigt den Ablauf, da bei nicht erreichbarem Zielrechner nur 5 Sekunden gewartet und bei erreichbarem Zielrechner nur das Update gestartet, aber nicht dessen Abschluss abgewartet wird.

Zu überlegen wäre noch, wie sich der Erfolg des Updates kontrollieren lässt.

Natürlich ließe sich das Ganze auch über lokale Batchdateien auf den Clients lösen - die entsprechenden Überlegungen dazu hat gestern bereits Biber im anderen Thread angemerkt.

Falls das mehrfache Updaten mit der selben Version unproblematisch ist, kannst Du einfach in das StartUp-Script der Clients folgende Zeile aufnehmen:

01.
if exist \\UpdateServer\UpdateFreigabe\OH\Update\Update.exe \\UpdateServer\UpdateFreigabe\OH\Update\Update.exe
Soll ein neues Update freigegeben werden, hinterlegst Du die "Update.exe" wie gehabt im entsprechenden Ordner des Servers. Sobald Du davon ausgehen kannst, dass alle Rechner das Update erhalten haben, kannst Du die "Update.exe" wieder aus diesem Ordner löschen (oder auch nur umbenennen), sodass das neuerliche Installieren wegen der Existenzprüfung ("if exist") unterbleibt.

So wie oben müsstest Du auch bei dieser Variante den UNC-Pfad statt eines Laufwerkmappings verwenden (wozu ich ohnehin generell raten würde).

HTH
bastla
Bitte warten ..
Mitglied: imebro
27.10.2006 um 14:22 Uhr
Hi Bastla,

danke für den ausführlichen Tipp... schaut sich recht gut an! DANKE!

Werde wohl die zweite Möglichkeit testen. Mir wäre aber eine manuelle Lösung sicherer.

Aber ein Problem besteht noch:

Ich habe es nicht geschafft, die Batch-Datei auf einem Client zu starten. Seltsamer Weise wurde der Inhalt der Batch-Datei (also der Start eines Programms) dann auf meinem Rechner ausgeführt.

Ich würde Deinen Vorschlag "if exist \\UpdateServer..............." gerne in eine Batch-Datei nehmen und diese auf jedem Client in ein Verzeichnis (zB. C:\OH) ablegen.
Diese Datei möchte ich dann vom Server aus auf jedem Client starten - wiederum über eine Batch-Datei.

Das wäre die in meinem Fall ideale Lösung.

Danke nochmals.
Ingo
Bitte warten ..
Mitglied: bastla
27.10.2006 um 14:53 Uhr
Hallo Ingo!

Genau dieses "ferngesteuerte" manuelle Starten erreichst Du mit PsExec - auf Wunsch natürlich auch über den Zwischenschritt (oder besser Umweg) "lokale Batch-Datei".

HTH
bastla
Bitte warten ..
Mitglied: imebro
27.10.2006 um 15:23 Uhr
OK bastla,

habe PsExec runtergeladen und alles so in eine Batch-Datei geschrieben:

"psexec \\das08 -u das\Administrator -d -n 5 \\Server\das\Antrag\Update\update.exe"

Jetzt erhalte ich aber die Meldung, dass der Befehl "psexec" entweder falsch geschrieben wurde oder nicht gefunden wurde...

Was mache ich noch falsch?

Ingo
Bitte warten ..
Mitglied: bastla
27.10.2006 um 15:30 Uhr
Hallo Ingo!

Am einfachsten die psexec.exe in den Ordner C:\Windows\System32 legen, damit sie immer ohne Pfadangabe verwendet werden kann; ansonsten Aufruf mit vollständigem Pfad, zB

01.
C:\PsTools\psexec \\das08 ....
Grüße
bastla
Bitte warten ..
Mitglied: imebro
27.10.2006 um 15:51 Uhr
Tja - scheint nicht so einfach zu sein.

Im Prinzip klappt es.... aber auf dem entfernten PC (das08) tut sich nichts, obwohl die Meldung im CMS-Fenster auf meinem PC aussagt, dass alles funktioniert hat.

Bei mir steht also im DOS-Fenster (cms):

"\\das08\Update\Updatee.exe startet on das08 with process ID 1204"

Schaue ich dann auf dem das08-PC nach, ist dort nichts geschehen... es müßte sich ein Fenster geöffnet haben.

Hmmm.... mach wohl doch besser Wochenende

Gruss
Ingo
Bitte warten ..
Mitglied: bastla
27.10.2006 um 15:58 Uhr
Hallo Ingo!

Hat die "Update.exe" keinen Schalter "/silent" oder ähnlich für eine "unbeaufsichtigte" Installation?

Du könntest den psexec-Aufruf noch durch ein "-i" ergänzen (vor "-d").

Grüße
bastla
Bitte warten ..
Mitglied: imebro
27.10.2006 um 16:03 Uhr
OK - versuche es mal mit dem -i vor -d

Nein - einen solchen Schalter hat die Datei nicht. Habe auch schon eine andere Datei versucht.... eine, die einfach ein Programm startet... aber auch hier erhielt ich die gleiche Meldung, wie bei der Update.exe.

Teste jetzt nochmal Deinen letzten Tipp.

Danke.
Ingo
Bitte warten ..
Mitglied: imebro
27.10.2006 um 16:07 Uhr
Leider das gleiche Ergebnis.

Meldung an meinem PC einwandfrei.... aber auf das08 öffnet sich kein Programm.

Werde am Montag nochmal weiter versuchen.
Dir ein schönes WE... und vielen Dank!!

Ingo
Bitte warten ..
Mitglied: bastla
27.10.2006 um 16:11 Uhr
Hallo Ingo!

Noch eine Frage: Musst Du für das Update irgendwelche Eingaben tätigen (auch wenn nur ein "OK" anklicken)?

Schau Dir auch noch an, was ohne das "-d" passiert (dann müsste psexec auf das Ende der "Update.exe" warten).

Grüße
bastla
Bitte warten ..
Mitglied: imebro
30.10.2006 um 08:51 Uhr
Hallo bastla,

war bei Deiner letzten Frage schon im Wochenende.

Ich denke, dass ich schon noch mind. eine Eingabe machen muss. Kann es jetzt leider nicht testen, da im Moment keine aktuelle Update.exe vorliegt.
Komisch ist halt eben, dass allem Anschein nach alles funktioniert (im CMD-Fenster läuft alles komplett durch), aber auf dem anderen PC (das08) tut sich nichts... das Programm öffnet sich nicht.

Vielleicht klappt das ja einfach so gar nicht (??)

Gruss
Ingo
Bitte warten ..
Mitglied: bastla
30.10.2006 um 15:39 Uhr
Hallo Ingo!

Falls es tatsächlich erforderlich wäre, während des Update-Vorganges interaktiv Eingaben zu tätigen, würde eine Automatisierung ohnehin kaum funktionieren - allenfalls könntest Du Dir über RemoteDesktop (VNC) den Weg zu den Workstations sparen ...

Ansonsten könntest Du versuchen, Dir mit der Eingabe von
01.
Update.exe /?
oder
01.
Update.exe -?
eventuelle Befehlszeilenschalter anzeigen zu lassen und dadurch die Benutzereingaben zu ersetzen.

Vermutlich wird es aber am sinnvollsten sein, direkt den Hersteller auf die Problematik anzusprechen - und ihm gegebenen Falls nahe zu legen, die Updates (über die angesprochenen Befehlszeilenschalter) "scripting-fähig" zu machen.

Grüße
bastla
Bitte warten ..
Neuester Wissensbeitrag
CPU, RAM, Mainboards

Angetestet: PC Engines APU 3a2 im Rack-Gehäuse

(1)

Erfahrungsbericht von ashnod zum Thema CPU, RAM, Mainboards ...

Ähnliche Inhalte
Netzwerkmanagement
gelöst Batch Datei auf anderem PC öffnen (35)

Frage von Flodsche zum Thema Netzwerkmanagement ...

Batch & Shell
gelöst Batch-Datei in Exe-Datei umwandeln - .exe im Autostart (7)

Frage von Luuke257 zum Thema Batch & Shell ...

Batch & Shell
gelöst Batch-Datei mit anderem Benutzer laufen lassen und dann wieder sofort abmelden (4)

Frage von Zunaras zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

DSL, VDSL
DSL-Signal bewerten (13)

Frage von SarekHL zum Thema DSL, VDSL ...

Switche und Hubs
Trunk für 2xCisco Switch. Wo liegt der Fehler? (9)

Frage von JayyyH zum Thema Switche und Hubs ...

Backup
Clients als Server missbrauchen? (8)

Frage von 1410640014 zum Thema Backup ...