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, 13429 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 ..
Ä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 Bestimmte Daten aus CSV per Windows BATCH Datei in .txt Format schreiben lassen. (9)

Frage von freshman2017 zum Thema Batch & Shell ...

Windows Netzwerk
gelöst Netzwerkpfad per Batch-Datei (6)

Frage von AveiroCR7 zum Thema Windows Netzwerk ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(7)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte