Microsoft MVPs inside





 MCSEboard.de – IT Pro Forum zu Windows Server 2008 R2 / 2008 / 2003 & Windows 7 / Vista / XP
Registrieren Hilfe Regeln Benutzerliste Suchen Heutige Beiträge Alle Foren als gelesen markieren

Windows Forum — Scripting


Alles zum Thema System Administration Scripting — Q & A zum Thema Scripting: Batch, VBS, WMI, PowerShell


Antwort
     
Themen-Optionen
Alt 12.02.2007, 20:29   #1
Gast
 
Benutzerbild von rsync02
 
Offline
Registriert seit: 03-2005
Beiträge: 88
Virtual Machine (Virtual Server 2005R2) per Script sichern

Hallo,

ich versuche, meine VM, die unter Virtual Server 2005 R2 läuft, per Script zu sichern.
Ich habe dazu dieses Script
Back Up Microsoft Virtual Server Images
benutzt.
On Error Resume Next

Set objShell = CreateObject ("WScript.Shell")
set objFSO=CreateObject("Scripting.FileSystemObject")
Set virtualServer = CreateObject("VirtualServer.Application")
DestBackupDir = "D:\VM-Backups\"
sExCmd = "CreateVSS.cmd"
Set oFileSys = CreateObject("Scripting.FileSystemObject")
if oFileSys.FileExists(sExCmd) then oFileSys.DeleteFile(sExCmd)
set oExCmd = oFileSys.CreateTextFile(sExCmd, CopyOverwrite)

For each objVM in virtualServer.VirtualMachines
'See if vm machine is running. If so then do backup
If objVM.State = 5 then
'Save state the virtual machine
set saveTask = objVM.Save
'Loop waiting for task completion - and display status
while not saveTask.isComplete
WScript.Sleep 1000
wend
'Copy .VMC and .VSV files
MyArray = Split(objVM.File,"\")
Filename = MyArray(Ubound(MyArray))
objFSO.CopyFile objVM.File,DestBackupDir & Filename
MyArray = Split(objVM.SavedStateFilePath,"\")
Filename = MyArray(Ubound(MyArray))
objFSO.CopyFile objVM.SavedStateFilePath,DestBackupDir & Filename
End If
Next
Set objVM = Nothing

' Create Shadow copy of VM drive
oExCmd.WriteLine "vshadow.exe -script=setvar1.cmd -p d:"
oExCmd.WriteLine "call setvar1.cmd"
oExCmd.WriteLine "vshadow.exe -el=%SHADOW_ID_1%,x:"
oExCmd.Close
Result = objShell.run(sExCmd,vbMinimized, TRUE)

' Start VM machine up from saved state
For each objVM in virtualServer.VirtualMachines
'See if vm machine is Saved. If so then resume
If objVM.State = 2 then
'Start virtual machine
objVM.Startup
End If
Next
Set objVM = Nothing
WScript.Sleep 10000


If Result = 0 then
'Loop through all vm machines
For each objVM in virtualServer.VirtualMachines
'See if vm machine is running. If so copy shadow backup of vm disk drives
If objVM.State = 5 then

'Copy virtual hard disks and undo disks
For each vhd in objVM.HardDiskConnections
MyArray = Split(vhd.undoHardDisk.file,"\")
Filename = MyArray(Ubound(MyArray))
SourceName = "x" & Right(vhd.undoHardDisk.file,Len(vhd.undoHardDisk.file)-1)
wscript.echo vhd.undoHardDisk.file
wscript.echo SourceName
objFSO.CopyFile SourceName,DestBackupDir & Filename
MyArray = Split(vhd.HardDisk.file,"\")
Filename = MyArray(Ubound(MyArray))
SourceName = "x" & Right(vhd.HardDisk.file,Len(vhd.HardDisk.file)-1)
objFSO.CopyFile SourceName,DestBackupDir & Filename
Next

End If
Next
End If

' Shutdown all shadow copy instances
if oFileSys.FileExists(sExCmd) then oFileSys.DeleteFile(sExCmd)
set oExCmd = oFileSys.CreateTextFile(sExCmd, CopyOverwrite)
oExCmd.WriteLine "Echo y | vshadow.exe -da"
oExCmd.Close
Result = objShell.run(sExCmd,vbMinimized, TRUE)

'Script ends
wscript.echo "done"
Ich habe lediglich den Backuppfad angepasst.
Nun habe ich das Problem, das zwar meine .vsv und .vmc Datein unter C:\Dokumente und Einstellungen\All Users\Dokumente\Shared Virtual Machines\..liegen und auch vom Script gesichert werden, aber meine .vhd Datei, die auf einer seperaten Festplatte mit einem ganz anderen Pfad liegt, leider nicht mitkopiert wird. "E:\VM-Drives\sbs200.vhd"
Leider kann ich kein VBS (zum Anpasssen des Backuppfads hats gerade noch gereicht).
Kann mir vielleicht jemand noch einen Tip geben, wie ich diesen Pfad in dieses Script integrieren kann.
    Mit Zitat antworten
Alt 21.08.2007, 10:51   #2
Newbie
 
Offline
Registriert seit: 08-2007
Beiträge: 1
Such die folgende Zeile im Script und änder das "d" entsprechen in dein Laufwerksbuchstaben um wo die vhd Dateien liegen !

oExCmd.WriteLine "vshadow.exe -script=setvar1.cmd -p d:"



Teil mir wenns läuft mal deine Erfahrungen mit , weil bei mir läuft es nicht automatisch, es erscheint beim Durchlaufen immer ein Fesnter was bestätigt werden muss sonst läufts nicht weiter. Die Anzahl der Fenster die erscheinen richten sich nach der Anzahl der VMs

Gruß,
Tobi
    Mit Zitat antworten
Antwort


Themen-Optionen


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Virtual Server 2005R2, mehrere Instanzen dizo Virtualisierung 0 03.07.2008 15:28
Fehler: Virtual Server 2005R2 auf Vista Business =MoP=Dragan Virtualisierung 8 17.10.2007 11:33
Virtual Server 2005R2 - deinstallation fehlgeschlagen cwt106 Virtualisierung 1 09.10.2007 18:17
Virtual Server 2005R2 lonzo001 Virtualisierung 2 07.08.2006 16:33
Gast in Virtual Server 2005R2 mit Host-Domäne verbinden? Hoppala! Virtualisierung 3 10.07.2006 20:16


Alle Zeitangaben in MEZ/CET. Es ist jetzt 15:25 Uhr. Seite generiert in 0,030 Sekunden.

- Unsere Partner -

Copyright © 2000 – 2012 MCSEboard.de

Sprung zum Seitenanfang