Поиск по этому блогу

четверг, 7 февраля 2013 г.

резервные копии по расписанию скриптом powershell (scheduled backups with powershell scripts)

Если у вас есть задача выполнять несколько различных резервных копий по расписанию в windows server 2012 можно создать несколько скриптов с различными параметрами архивации, и выполнять их стандартным планировщиком windows.

Например вот мой скрипт:
Имя скрипта: Backup-monthly2NetMail.ps1
 #Get date from the system
$date = Get-Date -Format dd.MM.yyyy

#Create a new policy backup
$policy = New-WBPolicy

#Specify a list of folders included into backup
$files=new-WBFileSpec E:\shares\FOLDER1,E:\shares\FOLDER3,E:\shares\FOLDER4

#Add folders / source folders into the policy
Add-wbFileSpec -policy $policy -filespec $files

#Declaring the backup target
$backdir=("\\SERVER1\BackupShare\{0}\Monthly\{1:yyyyMMdd_hhmmss}" -f $env:computername,(get-date))

#Create backup folder into the network share
mkdir $backdir | out-null

#Declare backup location based on folder name
$backupLocation = New-WBBackupTarget -network $backdir 

#Add backup location into the policy
Add-WBBackupTarget -Policy $policy -Target $backupLocation

#Start backup procedure based on defined policy
Start-WBBackup -Policy $policy

$smtp = "<MY SMTP SERVER ADDRESS>" 
$from = "<SENDER>" 
$to = "<TARGET EMAIL ADDRESS>"
$body = "Backup Monthly 2 network share: $backupLocation Date: $date" 
$subject = "backup on $date" 
#Send an Email to User  
send-MailMessage -SmtpServer $smtp -From $from -To $to -Subject $subject -Body $body -BodyAsHtml 
 В планировщике создаем задание, с нужным вам временем и интервалом запуска

Действие запуск программы:  powershell.exe
Аргументы -NonInteractive -noprofile -command "&{E:\Backup-weekly2NetMail.ps1}"