Для резервного копирования двух виртуальных машин я создал cmd-скрипт следующего содержания:
setlocal enableextensions
ForFiles /P "H:\BACKUP\Virtual" /D -75 /C "CMD /C if @ISDIR==TRUE echo RD /Q /S @FILE &RD /Q /S @FILE"
C:\Windows\System32\vmrun.exe suspend I:\VmWare\VM1\VM1.vmx
md H:\BACKUP\Virtual\VM1_%date%
xcopy /e I:\VmWare\VM1\*.* H:\BACKUP\Virtual\VM1_%date%
C:\Windows\System32\vmrun.exe suspend I:\VmWare\VM2\VM2.vmx
md H:\BACKUP\Virtual\VM2_%date%
xcopy /e I:\VmWare\VM2\*.* H:\BACKUP\Virtual\VM2_%date%
C:\Windows\System32\shutdown.exe -r -f
exit
setlocal enableextensions
ForFiles /P "H:\BACKUP\Virtual" /D -75 /C "CMD /C if @ISDIR==TRUE echo RD /Q /S @FILE &RD /Q /S @FILE"
C:\Windows\System32\vmrun.exe suspend I:\VmWare\VM1\VM1.vmx
md H:\BACKUP\Virtual\VM1_%date%
xcopy /e I:\VmWare\VM1\*.* H:\BACKUP\Virtual\VM1_%date%
C:\Windows\System32\vmrun.exe suspend I:\VmWare\VM2\VM2.vmx
md H:\BACKUP\Virtual\VM2_%date%
xcopy /e I:\VmWare\VM2\*.* H:\BACKUP\Virtual\VM2_%date%
C:\Windows\System32\shutdown.exe -r -f
exit
Данный скрипт сначала удаляет папки резервных копий старше 75 дней и останавливает виртуальную машину. Затем на резервном диске создает папку с названием виртуальной машины и текущей датой. После этого начинается копирование файлов. На завершающем этапе происходит принудительное закрытие запущенных приложений без предупреждения пользователей и перезагрузка компьютера.
Выше созданный скрипт необходимо добавить на выполнение с определенной периодичностью в планировщик заданий.
P.S. Для правильной работы скрипта файл vmrun.exe из папки VMware Workstation был скопирован в C:\Windows\System32.
Комментариев нет:
Отправить комментарий