Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Betriebssysteme (https://www.delphipraxis.net/27-betriebssysteme/)
-   -   Win 2k8 Server , Aufgabenplanung und batch (https://www.delphipraxis.net/167315-win-2k8-server-aufgabenplanung-und-batch.html)

Lemmy 23. Mär 2012 14:17

Win 2k8 Server , Aufgabenplanung und batch
 
Hi,

ich habe vor Jahren bei einem meiner früheren Arbeitgeber eine Wochensicherung eingerichtet, die die Daten einer Serverplatte am Freitag Nacht auf einen anderen PC kopiert hat. Da gabs dann 2 Ordner (Woche1 und WOche2) die per Verzeichnis umbenennen rotierend befüllt wurden.

Nun hat mal einen neuen Server gebraucht und neben der Hardware auch das BS ersetzt (NT-Server auf 2008er Server). Das dumme daran ist nur, jetzt funktioniert mein SCript mit dem Umbenennen der Verzeichnisse nicht mehr, das Kopieren der Dateien aber schon. Die Batch wird aus der Aufgabenverwaltung aufgerufen, als Benutzer ADministrator. Wenn ich das Batch von der Kommandozeile aufrufe funktioniert es auch wie gewünscht, d.h. die Vereichnisse werden umbenannt und dann die Daten kopiert.

Hat jemand ne Idee warum das aus der Aufgabenverwaltung raus nicht funktioniert? Es kommt auch keine Fehlermeldung.... Ach ja, ich rufe die Batch nicht direkt auf, sondern über ne zweite Batch um ein Protokoll mitschreiben zu können (call wochensicherung.bat > wochenprotkoll.txt)

Grüße

RWarnecke 23. Mär 2012 14:49

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Ich habe das gleiche Problem gehabt. Ich habe dann einfach meine Batches in EXE umgewandelt und seit dem funktionieren meine Scripte einwandfrei. Probiere es mal aus.

Lemmy 23. Mär 2012 15:29

AW: Win 2k8 Server , Aufgabenplanung und batch
 
öhm.. batch in Exe umwandeln? Wusste gar nicht dass das geht... Ich versuchs mal und melde mich (falls ich es nicht vergesse....)

Grüße

ol1uw 23. Mär 2012 18:57

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Unter welchem Account wird die Batch ausgefüht ?

Uwe

RWarnecke 23. Mär 2012 19:11

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

... Kopieren der Dateien aber schon. Die Batch wird aus der Aufgabenverwaltung aufgerufen, als Benutzer ADministrator. Wenn ich das Batch von der Kommandozeile aufrufe funktioniert es auch wie gewünscht, d.h. die Vereichnisse ...
Hier hast Du die Antwort.

Valle 23. Mär 2012 19:11

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Alternativ und notfalls kann man auch auf fertige Backup-Lösungen zurückgreifen. Davon gibt es ja genügend.

Liebe Grüße,
Valentin

himitsu 23. Mär 2012 19:15

AW: Win 2k8 Server , Aufgabenplanung und batch
 
CMD ist nicht administratorgeeignet.

Wenn man eine BAT/CMD als Administrator ausfürht, dann wird das Arbeitsverzeichnis auf C:\Windows oder war's C:\Windows\System32 geändert.

Relative Pfade haben da keinen guten Stand mehr.

Schreib mal Folgendes am Anfang deiner Batch:
Code:
%~d0
CD "%~dp0"
(funktioniert nicht mit Netzwerkpfaden)

Valle 23. Mär 2012 19:19

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Dann kann man doch einfach das Arbeitsverzeichnis wechseln. Sollte doch kein Problem sein?

Liebe Grüße,
Valentin

himitsu 23. Mär 2012 19:28

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von Valle (Beitrag 1158219)
Dann kann man doch einfach das Arbeitsverzeichnis wechseln.

Genau das macht mein Code.

ol1uw 23. Mär 2012 19:32

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von RWarnecke (Beitrag 1158215)
Zitat:

... Kopieren der Dateien aber schon. Die Batch wird aus der Aufgabenverwaltung aufgerufen, als Benutzer ADministrator. Wenn ich das Batch von der Kommandozeile aufrufe funktioniert es auch wie gewünscht, d.h. die Vereichnisse ...
Hier hast Du die Antwort.

Das hab ich zwar gelesen aber am Ende wieder vergessen :-).
Mir sind folgende Einschränkungen bekannt
- der Account muss ein Kennwort besitzen
- Netzwerkzugriffe gehen nicht als System Account

beides sollte als Administrator aber vorhanden sein

bei uns laufen auf mehreren W2k8 Servern .cmd Scripte mit wbadmin und rsync zur Sicherung ohne Probleme.
Aufruf erfolgt aus dem Taskplaner (Aufgabenplanung).
Allerdings sind alle enthaltenen Pfadangaben absolut.

Uwe

Lemmy 23. Mär 2012 19:44

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Hi,

Danke für die vielen Postings...

Das Arbeitsverzeichnis wird gewechselt (im script) - eben weil dieses beim Start auf c:\windows\system32 zeigt. Das hat es schon unter Windows NT 4.0. Seitdem funktioniert die Sicherung zuverlässig (und ist im übrigen nur ein Teil der Backupstrategie). Seit dem Wechsel auf Win 2k8 gehts halt nicht mehr - weil eben die Umbenennung (und nur die) nicht mehr funktioniert, sobald das Script aus der Aufgabenverwaltung ausgerufen wird. Eine Fehlermeldung gibts nicht, es passiert einfach nichts. Ich komme erst wieder nächste Woche auf den entsprechenden Rechner um das zu testen.

Grüße

himitsu 23. Mär 2012 19:50

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von Lemmy (Beitrag 1158228)
Eine Fehlermeldung gibts nicht, es passiert einfach nichts.

Du könntest die Ausgaben in eine Textdatei umleiten, wenn man das sonst nirgendwo einsehn kann.

Code:
BefehlA > C:\Log\MeineBatch.txt
BefehlB >> C:\Log\MeineBatch.txt
BefehlC >> C:\Log\MeineBatch.txt
Und viele Komandozeilenprogramme liefern einen Fehlercode.

Code:
COPY ...
IF ERRORLEVEL 1   ECHO CopyError >> C:\Log\MeineBatch.txt

Lemmy 23. Mär 2012 20:15

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von himitsu (Beitrag 1158230)
Zitat:

Zitat von Lemmy (Beitrag 1158228)
Eine Fehlermeldung gibts nicht, es passiert einfach nichts.

Du könntest die Ausgaben in eine Textdatei umleiten, wenn man das sonst nirgendwo einsehn kann.

Danke, ist mir bekannt, deshalb habe ich ja auch geschrieben: Es gibt keine Fehlermeldung, es passiert nichts! :-)

Von der Aufgabenplanung wird ausgeführt:

WochenSicherungProtokoll.bat

diese macht folgendes

Code:
call wochensicherung.bat > c:\backup\protokoll\wochensichung.txt
und wochensicherung.bat macht:

Code:

n:
cd Wochensicherung
ren woche2 woche3
ren woche1 woche2
ren woche3 woche1

robocopy d:\Daten n:\wochensicherung\woche1 .-...
das habe ich aus dem Gedächtnis geschrieben, das Script habe ich vor ca. 10 Jahren geschrieben, also bitte verzeiht, wenn ich nicht mehr alle Details im Kopf habe ;-)

Um ein ggf. vorhandenes Problem mit den Richtlinien zu umgehen (Zugriff auf Netzlaufwerke usw.) habe ich ren duch ein eigenes Programm ersetzt (aufgrund eines Tipps vor einem halben Jahr) - hat allerdings auch nix gebracht.

und wie gesagt: Kopieren der Dateien funktioniert tadellos....

Grüße

Valle 23. Mär 2012 20:45

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von himitsu (Beitrag 1158222)
Zitat:

Zitat von Valle (Beitrag 1158219)
Dann kann man doch einfach das Arbeitsverzeichnis wechseln.

Genau das macht mein Code.

Als ich den Beitrag verfasst habe, war da noch kein Code! ;-)

Liebe Grüße,
Valentin

himitsu 23. Mär 2012 20:47

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von Valle (Beitrag 1158233)
Als ich den Beitrag verfasst habe, war da noch kein Code! ;-)

Doch, gaaaaaaaaanz sicher. :angle2:


Code:
n:
cd Wochensicherung
Das ist aber ein relativer Pfad, irgendwo auf Laufwerk N, abhängig vom aktuellen Arbeitsverzeichnis des Laufwerks N.
So wäre es absolut:
Code:
n:
cd \Wochensicherung

Nja, entweder wird das Script nicht aufgerufen oder im Script ist was schief.

Code:
echo ***** Start ***** > c:\backup\protokoll\wochensichung.txt
call wochensicherung.bat >> c:\backup\protokoll\wochensichung.txt
if errorlevel 1   echo ***** Fehler ***** >> c:\backup\protokoll\wochensichung.txt
echo ***** Ende ***** >> c:\backup\protokoll\wochensichung.txt
Code:
echo ***** Start ***** > c:\backup\protokoll\wochensichung2.txt
n:
cd \Wochensicherung
echo ***** Rename ***** >> c:\backup\protokoll\wochensichung2.txt
ren woche2 woche3
if errorlevel 1   echo ***** Fehler Woche2-3 ***** >> c:\backup\protokoll\wochensichung2.txt
ren woche1 woche2
if errorlevel 1   echo ***** Fehler Woche1-2 ***** >> c:\backup\protokoll\wochensichung2.txt
ren woche3 woche1
if errorlevel 1   echo ***** Fehler Woche3-1 ***** >> c:\backup\protokoll\wochensichung2.txt

echo ***** Copy ***** >> c:\backup\protokoll\wochensichung2.txt
robocopy d:\Daten n:\wochensicherung\woche1 .-...
if errorlevel 1   echo ***** Fehler Copy Woche1 ***** >> c:\backup\protokoll\wochensichung2.txt

echo ***** Ende ***** >> c:\backup\protokoll\wochensichung2.txt
Und die Aufgabenverwaltung loggt die Aufrufe von WochenSicherungProtokoll.bat

Lemmy 23. Mär 2012 21:04

AW: Win 2k8 Server , Aufgabenplanung und batch
 
Zitat:

Zitat von himitsu (Beitrag 1158235)
Nja, entweder wird das Script nicht aufgerufen oder im Script ist was schief.

hmmm.. script wird ausgeführt, weil die Dateien kopiert werden. Wird das Script direkt von der Kommandozeile ausgeführt funktioniert alles... Ich versuchs auf jeden Fall mal über die exe...


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz