我正在使用来自微软网站的以下脚本来创建我的服务器的映像备份。问题是我的一台服务器上有一个外部硬盘,而备份脚本总是将外部硬盘包含在映像备份中。
我应该在脚本中修改什么才能使整个服务器没有外部磁盘?
来源:https://gallery.technet.microsoft.com/scriptcenter/WSB-Backup-network-email-9793e315#content
Get-WBVolume -AllVolumes 的输出
卷标:系统保留 安装路径: 挂载点:\\?\Volume{e1c711f2-9b80-11e4-80b4-806e6f6e6963} 文件系统:NTFS 属性:Critical、ValidSource、IsOnDiskWithCriticalVolume 自由空间:75513856 总空间:367001600 卷标:HD2_BACKUP 安装路径:E: 挂载点:\\?\Volume{ec27b343-e89b-11e4-80de-000c290bce57} 文件系统:NTFS 属性:ValidSource 自由空间:754411352064 总空间:1000202043392 卷标:SYSTEM 安装路径:C: 挂载点:\\?\Volume{e1c711f3-9b80-11e4-80b4-806e6f6e6963} 文件系统:NTFS 属性:Critical、ValidSource、IsOnDiskWithCriticalVolume 自由空间 : 77012553728 总空间:107005083648
#需要-版本 2.0 #初始化 WSB cmdlet 如果((Get-PSSnapin-名称 Windows.ServerBackup-ErrorAction SilentlyContinue)-eq $null) { 添加 PsSnapin Windows.ServerBackup } #----------------------------------------------------------------- #变量 #----------------------------------------------------------------- #文件服务器 $Nas = “\\FSVM001” #根文件夹 $HomeBkpDir = ($Nas+"\backup") #备份文件夹 $Filename = 获取日期 -格式 MMddyyyy_hhmmss #要保留的备份数量(值“0”表示禁用轮换) $MaxBackup = 1 #列出不重要的卷 $Volumes = Get-WBVolume -AllVolumes | Where-Object { $_.Property -notlike "Critical*" } #----------------------------------------------------------------- #用于比较要保留的文件夹数量的函数 #$MaxBackup(如果 $MaxBackup 等于 0,则不调用) #----------------------------------------------------------------- 函数旋转() { #列出所有备份文件夹 $Backups = @(Get-ChildItem -Path $HomeBkpDir\*) #备份文件夹数量 $NbrBackups = $Backups.count $i = 0 #删除最旧的备份文件夹 while ($NbrBackups -ge $MaxBackup) { $Backups[$i] | 删除项目-强制-递归-确认:$false $NbrBackups -= 1 $i++ } } #----------------------------------------------------------------- #发送电子邮件通知的功能 #----------------------------------------------------------------- 函数EmailNotification() { #发件人电子邮件 $Sender = “sender.at.corpnet.net” #收据邮件 $Receipt = “receipt.at.contoso.com” #SMTP 服务器 $Server = “smtp.corpnet.net” #邮件主题 $Object = $env:computername+":“+(Get-Date)”的备份报告 #邮件内容 $Content = Get-WBJob -Previous 1 | ConvertTo-Html -As List | Out-String $SMTPclient = 新对象 System.Net.Mail.SmtpClient $Server #如果需要,请指定 SMTP 端口 #$SMTP客户端.端口 = 587 #如果需要,请激活 SSL #$SMTPclient.EnableSsl = $true #如果需要,请指定电子邮件帐户凭据 #$SMTPAuthUsername =“登录” #$SMTPAuthPassword = “密码” #$SMTPClient.Credentials = 新对象 System.Net.NetworkCredential($SMTPAuthUsername,$SMTPAuthPassword) $Message = 新对象 System.Net.Mail.MailMessage $Sender, $Receipt, $Object, $Content $消息.IsBodyHtml = $true; $SMTP客户端.发送($Message) } #----------------------------------------------------------------- #主要的 #----------------------------------------------------------------- #如果启用则执行旋转 如果 ($MaxBackup -ne 0) { 回转 } #备份文件夹创建 新项目 ($HomeBkpDir+"\"+$Filename) -类型目录 | Out-Null $WBPolicy = 新-WBPolicy #启用 BareMetal 功能(包括系统状态) 添加-WBBareMetalRecovery-Policy $WBPolicy | Out-Null #添加备份目标 $BackupLocation = New-WBBackupTarget -network($HomeBkpDir+"\"+$Filename) 添加-WBBackupTarget -Policy $WBPolicy -Target $BackupLocation -force | Out-Null #添加不重要的卷 如果 ($Volumes -ne $null) { 添加-WBVolume -Policy $WBPolicy -Volume $Volumes | Out-null } $WBPolicy | 输出-Null 启动-WBBackup-Policy $WBPolicy #调用邮件通知功能 电子邮件通知