joni2000de
Goto Top

batch über Task-Scheduler verursacht Fehler

Hallo Admins!

Ich habe auf einem Windows Server 2008 ein batch das ein 2. batch aufruft. Das 2. batch komprimiert ein Datenbankfile mit 7zip. Wenn ich das erste batch von Hand starte funktioniert alles problemlos (inkl. Start des 2. batch und Komprimierung). Das Ganze sollte aber über den Task-Scheduler gestartet werden. Wenn der Aufruf über den Task-Scheduler erfolgt gibt 7zip die Fehlermeldung 9009 zurück und es wird nichts durchgeführt. Diese Fehlermeldung gibt es meines Wissenes offiziell gar nicht. Alles läuft lokal auf dem Server. Der Benutzer der den Task startet ist der gleiche mit dem ich beim Test angemeldet bin (Administrationsrechte).

Hat mir jemand einen Tipp woran es hier haken könnte?

Danke für eure Hilfe.

Gruß Joni

Content-Key: 123829

Url: https://administrator.de/contentid/123829

Printed on: April 16, 2024 at 16:04 o'clock

Mitglied: 81825
81825 Aug 31, 2009 at 08:43:57 (UTC)
Goto Top
Hi,

Hat mir jemand einen Tipp woran es hier haken könnte?
in den meisten Fällen liegt das an unvollständigen oder fehlerhaften Pfadangaben oder Parametern.
Member: joni2000de
joni2000de Aug 31, 2009 at 08:56:22 (UTC)
Goto Top
Zitat von @81825:
in den meisten Fällen liegt das an unvollständigen oder
fehlerhaften Pfadangaben oder Parametern.

Wenn ich das Script von Hand starte funktioniert es. Dann kann es doch nicht am Pfad oder an den Parametern liegen? Der Eintrag im Logfile, wie das Programm aufgerufen wird, ist bei beiden Versionen auch gleich.
Mitglied: 81825
81825 Aug 31, 2009 at 09:26:02 (UTC)
Goto Top
Doch. kann es. Der Eintrag im Taskscheduler benötigt auch beides.
Member: AndreasHoster
AndreasHoster Aug 31, 2009 at 09:26:30 (UTC)
Goto Top
Ich weiß ja nicht, wie man bei einer Google Suche mit 7zip 9009 bzw Batch 9009 nicht über die Erläuterung stolpern kann, aber 9009 bedeutet, daß Windows den Befehl nicht finden konnte.
=> Also falsche Pfadangaben oder unvollständige. Wie greypeter geschrieben hat.
Und ja, es liegt am Pfad/Path. Beim Task-Scheduler wird schließlich nicht jeder Autostart-Dreck ausgeführt wie bei einer interaktiven Anmeldung. Damit sind möglicherweise nicht alle Einstellungen so, wie bei einer interaktiven Anmeldung.
Member: Biber
Biber Aug 31, 2009 at 09:32:11 (UTC)
Goto Top
Moin joni200de,

die von greypeter vermuteten "fehlerhaften Pfadangaben" können dennoch gegeben sein, wenn
  • sich entweder der beim manuellen Batch-Starten angemeldete benutzer von dem Benutzer des taskgesteuerten Skripts unterscheidet
  • und/oder ein teil der Netzwerklaufwerke nicht eistiert7gemapt ist für diesen Benutzer.

Anmerkung zum vermeintlich nicht existenten Fehlercode 9009 bei WinZip:
Ich bin ja kein 7zip-Programmierer, aber wenn ich einer wäre, würde ich "eigene" Errorcodes dann zurückliefern, wenn es Probleme im "meinem" 7-zip-Code gäbe.
Und ich würde bei fremdprogrammen/DLLs/API-Aufrufen alle Fehlercodes, die ich selbst nicht behandelt kann ungefiltert weitergeben.

Wenn die Jungs & Mäadels das genauso handhaben, dann ist 9009 ein Windows-Errorcode:
9009 DNS server not authoritative for zone.
Also ein nicht massgeblicher, nicht verbindlicher DNS-Server für diese Zone--> eventuell wird die 7z.exe als nicht vertrauenswürdig eingestuft, weil der Server nicht in der (Intranet)-Zone aufgenommen ist.

Grüße
Biber
Member: joni2000de
joni2000de Aug 31, 2009 at 10:37:28 (UTC)
Goto Top
Ich hab mal mein Script testhalber auf das nötigste zusammengekürzt:

d:\db-sicherung\7z.exe a d:\db-sicherung\db d:\db-sicherung\db.dmp

Es funktioniert über den Task-Scheduler trotzdem nicht (von Hand schon). Ich bin da etwas ratlos.
Zur Info d: ist lokal.

Gruß Joni
Member: joni2000de
joni2000de Aug 31, 2009 at 11:04:06 (UTC)
Goto Top
Ich hab das Problem gelöst.

Da hat unser Softwarelieferant doch glatt die 32-bit Version von 7zip auf einem 64-bit Server installiert face-sad
Wenn du denen nicht beim jedem Handgriff auf die Finger schaust!

Von Hand scheint das keinen Unterschied zu machen, aber der Task-Scheduler mag hier die 32-bit Variante nicht.

Naja Hauptsache gefunden. Ob ich meine Zeit dem Lieferanten in Rechnung stellen kann?

Danke für euere Denkanstöße.

Gruß Joni