Jump to content

Script zur Sicherung von Virtuellen Maschinen


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo,

ich habe mir ein kleines Script geschrieben das meine Virtuellen Maschinen Sichern soll (VMWare Server). Es läuft alles wunderbar bis zu dem Punkt, wo er die Dateien wegkopieren soll! Das Verzeichniss wo eine Virtuelle Maschine drin liegt sieht wie folgt aus

 

E:\Virtuelle Maschinen\Produktivumgebung\Linuxserver

 

Er gibt mir immer aus das er den Pfad nicht finden kann es gibt ihn aber!! Wenn ich das eine Testdatei in E:\test.txt lege klappt es lege ich die Datei in E:\Virtuelle Maschinen findet er die Dateien nicht!

 

Hier mein Script!

 

del /Q /F C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux\log.txt
del /Q /F I:\Server-Images\PA-Linux >> log.txt

@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt
@echo Startzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo. >> log.txt
@echo. >> log.txt

"D:\VMware Server\vmrun.exe" -h https://127.0.0.1:8333/sdk -u VM-Backup -p password -T server suspend "[Produktivumgebung] PA-Linux/PA-Linux.vmx" >> log.txt

copy E:\Virtuelle Maschinen\Produktivumgebung\PA-Linux\*.* I:\Server-Images\PA-Linux\ >> log.txt

"D:\VMware Server\vmrun.exe" -h https://127.0.0.1:8333/sdk -u VM-Backup -p password -T server start "[Produktivumgebung] PA-Linux/PA-Linux.vmx" >> log.txt

@echo. >> log.txt
@echo. >> log.txt
@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt
@echo Endzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo Die Sicherung hat %timer% min. gedauert! >> log.txt

"C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux" mailsend.exe -d test.local -smtp 192.168.0.4 -t test@test.de -f backup@test.local +cc +bc -sub "Backup erfolgreich durchgelaufen am %date% - PA-Linux" -M "Das Backup to Disk ist erfolgreich abgeschlossen fuer PA-Linux!" -a log.txt                       

Link zu diesem Kommentar

Hallo,

das mit dem Copy klappt jetzt habe nur noch zwei Problem in meinem Script!

 

Das Script sieht jetzt wie folgt aus

 

del /Q /F "C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux\log.txt" 
del /Q /F I:\Server-Images\PA-Linux >> log.txt

@echo Backup to Disk Sicherung für PA-Linux erfolgreich abgeschlossen!>> log.txt
@echo. >> log.txt
@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt
@echo Startzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo. >> log.txt
@echo. >> log.txt

"D:\VMware Server\vmrun.exe" -h https://127.0.0.1:8333/sdk -u VM-Backup -p password -T server suspend "[Produktivumgebung] PA-Linux/PA-Linux.vmx" >> log.txt

copy "E:\Virtuelle Maschinen\Neuer Ordner\*.*" I:\Server-Images\PA-Linux\ >> log.txt

"D:\VMware Server\vmrun.exe" -h https://127.0.0.1:8333/sdk -u VM-Backup -p password -T server start "[Produktivumgebung] PA-Linux/PA-Linux.vmx" >> log.txt

@echo. >> log.txt

@echo Endzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo Die Sicherung hat %timer% min. gedauert! >> log.txt
@echo. >> log.txt

"C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux" mailsend.exe -d test.local -smtp 192.168.0.4 -t test@test.de -f backup@test.local +cc +bc -sub "Backup erfolgreich durchgelaufen am %date% - PA-Linux" -M "Das Backup to Disk ist erfolgreich abgeschlossen fuer PA-Linux!" -a log.txt                       

 

1. Er verschickt die Mail nicht automatisch mehr mit der log.txt

-Wenn ich das manuell mache ich

C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux

 

und dann folgenden Befehl ausführe bekomme ich die Mail

 

mailsend.exe -d test.local -smtp 192.168.0.4 -t test@test.de -f backup@test.local +cc +bc -sub "Backup erfolgreich durchgelaufen am %date% - PA-Linux" -M "Das Backup to Disk ist erfolgreich abgeschlossen fuer PA-Linux!" -a log.txt                       

 

2. Er errechnet nicht die Zeit wie lange das Backup gedauert hat in Stunden\Minuten\Sekunden!

-

@echo Die Sicherung hat %timer% min. gedauert!

 

 

So sieht die Logdatei nach einem Backup aus!

Backup to Disk Sicherung für PA-Linux erfolgreich abgeschlossen!

Sicherungs-Job vom: 21.03.2010 

Startzeit des Sicherungs-Jobs:  0:27:38 Uhr 


E:\Virtuelle Maschinen\Neuer Ordner\Neu Textdokument.txt
E:\Virtuelle Maschinen\Neuer Ordner\Neu WordPad-Dokument.doc
       2 Datei(en) kopiert.

Endzeit des Sicherungs-Jobs:  0:27:53 Uhr 
Die Sicherung hat  min. gedauert! 

 

Freue mich über jede Antwort!

Link zu diesem Kommentar

Bei den anderen Befehlen hast du den kompletten Pfad zur Datei in Anführungszeichen! Das solltest du beibehalten! ;)

"C:\Dokumente und Einstellungen\Administrator\Desktop\Batch\Backup\PA-Linux[color="Red"]\[/color]mailsend.exe[color="red"]"[/color] -d test.local -smtp 192.168.0.4 -t [email]test@test.de[/email] -f [email]backup@test.local[/email] +cc +bc -sub "Backup erfolgreich durchgelaufen am %date% - PA-Linux" -M "Das Backup to Disk ist erfolgreich abgeschlossen fuer PA-Linux!" -a log.txt

Link zu diesem Kommentar

wo auch immer die Zeitmessung starten soll

set /a start=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%

 

wo auch immer die Zeitmessung enden soll

set /a ende=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%

 

Differenz ermitteln

set /a diff=ende-start

 

Ausgabe

Dauer in Sekunden: %diff%

 

Läuft das Skript über Mitternacht, ist es Essig mit der Zeitmessung ;)

Link zu diesem Kommentar
wo auch immer die Zeitmessung starten soll

set /a start=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%

 

wo auch immer die Zeitmessung enden soll

set /a ende=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%

 

Differenz ermitteln

set /a diff=ende-start

 

Ausgabe

Dauer in Sekunden: %diff%

 

Läuft das Skript über Mitternacht, ist es Essig mit der Zeitmessung ;)

 

Hallo,

erstmal vielen Dank klappt wunderbar! Aber kann ich mir das auch evt. in Stunden\Minuten\Sekunden ausgeben lassen?

Link zu diesem Kommentar
Klar geht das. Musst halt die Sekunden passend umrechnen...

 

set /a hh=diff/3600
set /a mm=(diff%%3600)/60
set /a ss=(diff%%3600)%%60

 

Oder nimm, wie hier schon mal erwähnt wurde, die Powershell ;)

 

Sprich so dann ja?

 

@echo Backup to Disk durchgelaufen>> log.txt
@echo. >> log.txt
@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt @echo Startzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo. >> log.txt @echo. >> log.txt

set /a start=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2% >> log.txt copy "C:\Users\pa\Desktop\Test\PDF2SMTP\Bilder\*.*" C:\Users\pa\Desktop\Copy\ >> log.txt



@echo. >> log.txt

@echo Endzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
set /a ende=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2% >> log.txt
set /a diff=ende-start >> log.txt 
set /a hh=diff/3600 >> log.txt
set /a mm=(diff%%3600)/60 >> log.txt
set /a ss=(diff%%3600)%%60 >> log.txt


@echo Dauer in Sekunden: %diff% >> log.txt
@echo. >> log.txt

Link zu diesem Kommentar

Mh leider klappt es nicht so richtig!

 

Script sieht wie folgt aus...

 

@echo Backup to Disk durchgelaufen>> log.txt
@echo. >> log.txt
@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt 
@echo Startzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo. >> log.txt 
@echo. >> log.txt

set /a start=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2% >> log.txt 

copy E:\test\*.* D:\test2\ >> log.txt



@echo. >> log.txt

@echo Endzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
set /a ende=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2% >> log.txt
set /a diff=ende-start >> log.txt 
set /a hh=diff/3600 >> log.txt
set /a mm=(diff%%3600)/60 >> log.txt
set /a ss=(diff%%3600)%%60 >> log.txt


@echo Dauer in Sekunden: %diff% >> log.txt
@echo. >> log.txt

 

Ausgabe wie folgt...

 

Backup to Disk durchgelaufen

Sicherungs-Job vom: 22.03.2010 

Startzeit des Sicherungs-Jobs: 19:53:40 Uhr 


E:\test\1.rar
E:\test\2.rar
E:\test\3.rar

     3 Datei(en) kopiert.

Endzeit des Sicherungs-Jobs: 19:57:11 Uhr 
Dauer in Sekunden: 211 

 

Wo mache ich den Fehler?

Link zu diesem Kommentar

Bin grad zu faul das groß zu beschreiben, darum gibts mal die überarbeitete Komplettfassung. Solltest du vorhaben, damit weiter zu spielen, dann würde ich dir empfehlen, dich mal bissl zu dem Thema zu informieren. Oder aber du gehts weg von dem "alten" Kram und nimmst gleich die Powershell ;)

 

 

@echo Backup to Disk durchgelaufen>> log.txt
@echo. >> log.txt
@echo Sicherungs-Job vom: %date% >> log.txt
@echo. >> log.txt 
@echo Startzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
@echo. >> log.txt 
@echo. >> log.txt

set /a start=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%

copy E:\test\*.* D:\test2\ >> log.txt

@echo. >> log.txt

@echo Endzeit des Sicherungs-Jobs: %time:~0,8% Uhr >> log.txt
set /a ende=%time:~0,2%*3600+%time:~3,2%*60+%time:~6,2%
set /a diff=ende-start
set /a hh=diff/3600
set /a mm=(diff%%3600)/60
set /a ss=(diff%%3600)%%60


@echo Dauer des Vorgangs: %hh%:%mm%:%ss% >> log.txt
@echo. >> log.txt

Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...