我正在尝试将多个 USB 外部磁盘目标添加到 Windows Server 2012 备份计划中。
按照 GUI 中的步骤添加附加目标后,该过程失败并出现错误The system cannot find the path specified
。
我按照步骤进行操作本文:
- 选项 1 是行不通的,因为我们有十几个可移动磁盘,我不想买一箱 USB 集线器,然后把所有这些磁盘都挂在服务器机架后面。因此,在这种情况下,文章建议继续执行步骤 3。
- 选项 2 从备份计划中删除旧磁盘,这不是一个选项,原因很明显。
- 选项 3 建议运行该命令
WBADMIN ENABLE BACKUP -addtarget:{DISKGUID}
,但是该命令失败并显示错误消息ERROR - The specified backup location could not be found or is not a supported backup storage location
。
我发现许多帖子中,有些人报告说选项 3 成功了,但其他人,比如我自己,却遇到了完全相同的问题。
我检查了事件日志和目录中的文件C:\Windows\Logs\WindowsServerBackup
,但没有发现任何有用的信息。我还尝试删除磁盘上的卷并重复该过程,以及在磁盘上预先创建 NTFS 卷。
如果有任何相关性的话,我正在使用一系列未格式化容量为 2TB(格式化为 1.82TB)的 USB 磁盘。
还有其他人遇到过这个问题并成功解决了吗?
更新 1
回答这个问题建议在 GUID 周围加上引号,例如WBADMIN ENABLE BACKUP -addtarget:"{DISKGUID}"
。这更进一步,因为它询问我是否要格式化设备,但是格式化后,它会失败并显示错误The system cannot find the path specified.
答案1
我认为没有办法使用内置的 Windows 工具可靠地完成此操作。但是,备份辅助允许您将多个 USB 磁盘与 Windows Server Backup 结合使用,就像使用多个磁带一样,例如用于轮换异地备份。当备份作业完成时,它还将自动“安全移除”USB 磁盘,这样负责将 USB 磁盘移出异地的人员就不需要对服务器进行管理访问。
答案2
我非常失望,在这个问题发布两年后我又遇到了这个相当严重的问题 - 而且这是在新安装的 Windows 2012 Essentials 上,并且(我认为)安装了所有更新。
幸运的是,去年已经发布了一个HotFix:http://support.microsoft.com/kb/2833738
这对我有用。我能够使用以下命令添加新磁盘进行备份:
WBADMIN ENABLE BACKUP -addtarget:{DISKGUID}
在安装 HotFix 之前,我收到了“系统找不到指定的路径。”错误。
答案3
使用 PowerShell 脚本运行 WBADMINWBADMIN
作为使用 Windows Server Backup GUI 创建备份计划的替代方法。您可以使用 Windows 任务计划程序来运行脚本。使用命令从脚本或命令行创建的备份与通过 GUI 生成的备份创建的备份之间没有功能差异。
这是我在 Server 2012 上创建备份时使用的 PowerShell 3.0 脚本。WBADMIN
它使用卷 GUID 搜索备份目标磁盘,因为我通常不为备份驱动器分配驱动器号:
# Configuration
$BackupTargetDiskGUID_A = "\\?\Volume{c61d486a-c007-4070-a5a0-24924fe735f6}\"
$BackupTargetDiskGUID_B = "\\?\Volume{e0a09f69-3be6-11e4-942b-001e676ec6a8}\"
$BackupTargetDiskGUID_C = "\\?\Volume{4bb968a7-93f6-11e2-918e-001e6725c7e0}\"
# Get the Disk GUIDs (DeviceID) of all attached volumes.
# Step through all attached volumes.
$TargetDiskGUID = $null
:VolumeForeachLoop foreach ($Volume in Get-WmiObject -Class Win32_Volume | Where-Object {$_.DeviceID -like "\\?\*"})
{
# Match the first backup disk
Switch ($Volume.DeviceID)
{
$BackupTargetDiskGUID_A
{
$TargetDiskGUID = $Volume.DeviceID
break VolumeForeachLoop
}
$BackupTargetDiskGUID_B
{
$TargetDiskGUID = $Volume.DeviceID
break VolumeForeachLoop
}
$BackupTargetDiskGUID_C
{
$TargetDiskGUID = $Volume.DeviceID
break VolumeForeachLoop
}
}
}
If ($TargetDiskGUID)
{
# Run the backup
# The -include and -exclude switches accept comma delimited paths individually inclosed in quotes without trailing backslashes
wbadmin start backup -backuptarget:$TargetDiskGUID -quiet -vssCopy -allCritical -systemState --% -include:"D:" -exclude:"D:\Non-Backed Up Data"
}
Else
{
"No backup disk found."
}
WSB GUI 创建了一个特殊的备份策略,该策略一旦创建,就要求在将计划的备份写入所述驱动器之前将备份目标添加到策略中。不幸的是,通过 GUI 显示的 Windows Server Backup 在 Server 2012 中完全损坏.除非你有全部连接到机器的备份目标驱动器*,您不能执行以下操作:
- 添加备份目标磁盘
- 删除备份目标磁盘
- 修改备份选择(!)
除非微软解决这个问题,否则WBADMIN
在我看来,脚本是继续在 Server 2012 上使用 WSB 的唯一方法。
*墨菲定律还指出,这是建筑物发生火灾的最佳时机,因为源数据和所有备份都同时位于同一地点。
答案4
我感觉格式化后 GUID 会发生变化。
因此,您可以wbadmin get disks
在格式化后再次运行,然后WBADMIN ENABLE BACKUP -addtarget:"{DISKGUID}"
再次运行..