Top-Themen

Aktuelle Themen (A bis Z)

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

gelöst Probleme bei Auswertung des Errorlevel von NTBackup in Batch

Mitglied: chmu-xp

chmu-xp (Level 1) - Jetzt verbinden

25.12.2007, aktualisiert 26.12.2007, 8956 Aufrufe, 4 Kommentare

Hallo,

nachdem ich bereits alle meine bescheidenen Batch-Kenntnisse aus diesem genialen Forum gezogen habe habe ich noch ein für mich unlösbares Problem:

Ich sichere meinen Fileserver mit NTBackup über ein Script. Beim Start des automatischen Backups (über Taskplaner) als auch am Ende erhalte ich eine eMail (letztere mit Log als Anhang). In meiner Batch soll eigentlich der Errorlevel von NTBackup ausgewertet werden - allerdings erhalte ich immer das Ergebnis "Sicherung erfolgreich" - und ich habe keine Ahnung was hier schief läuft.

Hier meine Batch:
01.
Blat -install SERVER. server@xyz.de
02.
Blat -body "Sicherung Server gestartet" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server gestartet"
03.

04.

05.
echo off
06.
  for /f "Tokens=1-4 Delims=/ " %%i in ('date /t') do set dt=%%i-%%j-%%k-%%l
07.
  for /f "Tokens=1" %%i in ('time /t') do set tm=-%%i
08.
  set tm=%tm::=-%
09.
  set dtt=%dt%%tm%
10.
  C:\WINDOWS\system32\ntbackup.exe backup "@C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data\Backup Daily REV.bks" /n "%computername%-%dtt%" /d "daily %dtt%" /v:yes /r:no /rs:no /hc:off /m copy /j "daily %dtt%" /l:s /f "E:\Backup Daily.bkf" /UM
11.

12.
IF ErrorLevel 4 goto err_lvl4
13.
IF ErrorLevel 3 goto err_lvl3
14.
IF ErrorLevel 2 goto err_lvl2
15.
IF ErrorLevel 1 goto err_lvl1
16.
IF ErrorLevel 0 goto success_lvl
17.

18.
:err_lvl4
19.
set "Pfad=C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data"
20.
for /f %%i in ('dir /b /od "%Pfad%\*.log"') do set "Letzte=%%i"
21.
Blat -install SERVER. server@xyz.de
22.
Blat -body "Sicherung Server fehlerhaft" -attach "%Pfad%\%Letzte%" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server fehlerhaft"
23.
goto :eof
24.

25.
:err_lvl3
26.
set "Pfad=C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data"
27.
for /f %%i in ('dir /b /od "%Pfad%\*.log"') do set "Letzte=%%i"
28.
Blat -install SERVER. server@xyz.de
29.
Blat -body "Sicherung Server fehlerhaft (abgebrochen)" -attach "%Pfad%\%Letzte%" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server fehlerhaft (abgebrochen)"
30.
goto :eof
31.

32.
:err_lvl2
33.
set "Pfad=C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data"
34.
for /f %%i in ('dir /b /od "%Pfad%\*.log"') do set "Letzte=%%i"
35.
Blat -install SERVER. server@xyz.de
36.
Blat -body "Sicherung Server fehlerhaft (Zugriffs - oder Dateikonflikt)" -attach "%Pfad%\%Letzte%" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server fehlerhaft (Zugriffs - oder Dateikonflikt)"
37.
goto :eof
38.

39.
:err_lvl1
40.
set "Pfad=C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data"
41.
for /f %%i in ('dir /b /od "%Pfad%\*.log"') do set "Letzte=%%i"
42.
Blat -install SERVER. server@xyz.de
43.
Blat -body "Sicherung Server fehlerhaft (keine Daten zum sichern)" -attach "%Pfad%\%Letzte%" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server fehlerhaft (keine Daten zum sichern)"
44.
goto :eof
45.

46.
:success_lvl
47.
set "Pfad=C:\Dokumente und Einstellungen\Administrator\Lokale Einstellungen\Anwendungsdaten\Microsoft\Windows NT\NTBackup\data"
48.
for /f %%i in ('dir /b /od "%Pfad%\*.log"') do set "Letzte=%%i"
49.
Blat -install SERVER. server@xyz.de
50.
Blat -body "Sicherung Server erfolgreich" -attach "%Pfad%\%Letzte%" -to info@xyz.de -server smtp.strato.de -u server@xyz.de -pw XXXXX -debug -timestamp -log blatSMTPlog.txt -subject "Sicherung Server erfolgreich"
51.
goto :eof
Hat jemand eine Idee wo mein Fehler liegt?


Danke,

Christian
Mitglied: filippg
25.12.2007 um 20:10 Uhr
Hallo,

ich würde mal etwas wie

if %errorlevel% eq 1 goto ...

probieren. So wie du das hast wird der Wert von Errorlevel nicht aufgelöst, und es findet auch kein Vergleich statt. Das einzige was mich wundert ist, warum bei dir success_lvl ausgeführt wird, eigentlich müsste er in :err_lvl4 reinlaufen und von dort zu :eof.

Ansonsten: du machst doch bei allen Erroleveln das gleiche, bis auf den Betreff. Dann lege doch eine Variable an, in der du den Betreff hinterlegst (so wie bisher, als mit if und Sprungmarken) und verwende dann für alle die gleichen Blat-Aufrufe (lediglich mit der Variablen für den Betreff). Das ist deutlich sauberer programmiert.
Schön ist es auch immer die Fälle abzudecken, in denen Errolevel nicht zwischen 0 und 4 liegt (auch wenn das angeblich nicht möglich sein kann).

Filipp
Bitte warten ..
Mitglied: chmu-xp
25.12.2007 um 22:14 Uhr
Hallo,

vielen Dank für die Antwort.

Du hast recht - das Ganze läßt sich bestimmt sauberer und kürzer mit Variablen gestalten. Da dieses meine erste Batch ist mit ich allerdings mit den Variablen noch nicht ganz fit - aber ich arbeite daran

Muss ich den Errorlevel also mit %errorlevel% abfragen? Und muss dieser unbedingt "verglichen" werden?


Danke für die Hilfe

Christian
Bitte warten ..
Mitglied: Biber
25.12.2007 um 22:23 Uhr
Moin chmu-xp,

vom Gedankengang her ist Dein Sicherungsbatch schon sauber angelegt (vom möglichen Straffen wie von filippg beschrieben mal abgesehen).

Das Problem dürfte eher sein, dass sich NTBackup einfach nicht daran hält, Errorlevel ungleich 0 bei Misserfolg zurückzugeben.
Siehe bei M$KB 260327 Sicherung gibt Grütze zurück.

Weil mir M$-Zitate immer runtergehen wie Öl, hier eines original aus dem Artikel:
Auch wenn ein Problem ist, kann einen Exit (0) Nullcode das Sicherungstool derzeit zurückgeben.
Wenn es nur einen schwerwiegenden Fehler wie einem Ausgang des Speicherfehlers ermittelt,
wird das Sicherungstool einen Fehlercode ungleich Null zurückgeben.
Ein fehlendes Gerät, fehlendes Medium oder auch ein Sicherungsfehler werden weiterhin einen Exit (0) Nullcode zurückgeben.
...das könnte nicht mal ich toppen.

Abhilfe:
ABSOLUT darauf verzichten, den Errorlevel des NTBackup-Tools auszuwerten.
Werte das Logfile aus (neudeutsch: PTFL=parse the logfile).
Suche mit find/findstr nach "error", "invalid", "cancelled", "aborted" und gehe entsprechend der Fund/Nixfund-Situation zu Deinen Sprungmarken.

Liebe Grüße
ein weihnachtlich vollgefressener
Biber
Bitte warten ..
Mitglied: chmu-xp
26.12.2007 um 19:54 Uhr
Hallo Biber,

vielen Dank für Deine Antwort.

Dein org. MS-Zitat macht in der Tat die Auswertung des Errorlevel etwas "unnötig" (wobei das noch nett ausgedrückt ist

Da mich der Ehrgeiz gepackt hat werde ich mich mal bez. dem Auswerten der Log hier im Forum schlau lesen...ist wie gesagt mein erster Versuch mit Batches rumzubasteln (allerdings extrem faszinierend / durch MS bin ich ein bisschen zum Konsumenten geworden und suche nur nach fertigen Lösungen in Form von Software / Shareware / Freeware - dabei ist es absolut effizient, sich realisierbare Lösungen selber zu basteln...wie früher zu C64-Zeiten .


Noch einen schönen Restweihnachtstag,

Christian
Bitte warten ..
Ähnliche Inhalte
Batch & Shell

Win10 ändert den Errorlevel? ( Batch )

gelöst Frage von clragonBatch & Shell12 Kommentare

Hey Leute, Ich habe heute wieder mit Prozessen herumgebastelt, die sich gegenseitig überwachen. Da plötzlich, habe ich einen Fehler. ...

Batch & Shell

Bedeutung von RD Errorlevel 1 und Abweichung von errorlevel Meldungen in Batch und Konsole

Frage von anmelderBatch & Shell11 Kommentare

Ich lösche einen Flashspeicher im Netzwerk mit: Ich habe den Code vor Tagen erfolgreich getestet und er lief mit ...

Windows Server

Auswertung Logondaten

Frage von erwin.tWindows Server6 Kommentare

Hallo zusammen, ich habe ein Anliegen, und zwar bräuchte ich für einen User eine Protokollierung seiner Anmeldezeiten, leider reicht ...

Netzwerkmanagement

Traffic Auswertung Provider

Frage von tvprog1Netzwerkmanagement8 Kommentare

Hallo, welche Programme kommen in der Regel bei Providern für eine Traffic Auswertung zum Einsatz? Wie sieht so eine ...

Neue Wissensbeiträge
Windows 10

Windows 10 kann XPS erzeugen aber nicht anzeigen ????

Erfahrungsbericht von Deepsys vor 4 StundenWindows 10

Heute schickt mir ein Kollegen eine E-Mail mit einer XPS-Datei vom Kunden im Anhang und fragt wie er diese ...

Exchange Server

1und1 IONOS: Probleme beim Mailversand mit Exchange

Information von reksierp vor 13 StundenExchange Server3 Kommentare

Hallo, seit Do, 17.1.19 etwa Mittags nimmt 1und1 IONOS keine Mails mehr über den Standard-Port SMTP 25 an. Nachdem ...

LAN, WAN, Wireless

Cisco Mikrotik VPN Standort Vernetzung mit dynamischem Routing

Anleitung von aqui vor 1 TagLAN, WAN, Wireless

1. Allgemeine Einleitung Das nachfolgende Tutorial ist eine Fortführung der hier bei Administrator.de schon bestehenden VPN Tutorials und beschreibt ...

Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 2 TagenWindows Mobile

Moin, Microsoft empfiehlt als Alternative den Umstieg auf iOS oder Android, wie man hier lesen kann. Gruß Uwe

Heiß diskutierte Inhalte
LAN, WAN, Wireless
Temporäre WLAN Verbindung für AD-Login
Frage von Christian.WidauerLAN, WAN, Wireless17 Kommentare

Hallo zusammen, ich weiß leider nicht unter welchem Begriff ich dafür suchen muss, daher habe ich bisher leider nichts ...

Windows Server
MSSQL Backup in Form von .sql einspielen
Frage von janosch12Windows Server14 Kommentare

Guten Morgen, wir verwenden das Tool SQLandFTPBackup ( ) zum sichern einiger MSSQL Datenbanken. Nun sichert das Toll die ...

Netzwerkmanagement
Reverse Proxy für TCP und UDP Anfragen
gelöst Frage von flxklsNetzwerkmanagement14 Kommentare

Hallo zusammen, ich besitze einen Rootserver, der nur eine öffentliche IP besitzt und auf dem mehrere VMs laufen. Da ...

Microsoft Office
Office 2016 oder Office 2019
Frage von PeterzMicrosoft Office13 Kommentare

Hallo zusammen, wir müssen unser Office von 2010 auf eine neuere Version Umstellen. Jetzt stellt sich die Frage, ob ...