Windows Server Backup (WSB) has a well-documented limitation when attempting to configure multiple USB drives as backup targets. The GUI interface fundamentally doesn't support adding multiple removable drives simultaneously - a significant pain point for administrators managing large backup rotations.
Microsoft's KB2009365 suggests three methods, but as you've discovered:
- Option 1 (USB hub) becomes impractical at scale
- Option 2 (manual disk switching) defeats automation purposes
- Option 3 (WBADMIN CLI) often throws cryptic errors like
ERROR - The specified backup location could not be found
The key failure points we need to address:
# Common error sequence:
WBADMIN ENABLE BACKUP -addtarget:{DISKGUID}
# Fails with: "The specified backup location could not be found"
# Attempting with quotes:
WBADMIN ENABLE BACKUP -addtarget:"{DISKGUID}"
# Progresses to formatting but then fails with "The system cannot find the path specified"
After extensive testing across multiple Server 2012 installations, here's the reliable workflow:
- Prepare the Disk:
# First, clean and prepare the disk in DISKPART DISKPART > list disk > select disk X (where X is your USB disk) > clean > create partition primary > format fs=ntfs quick label="BackupDisk1" > assign letter=Z (temporary assignment) > exit
- Get the Correct GUID:
# Use WMIC to get the actual disk GUID wmic diskdrive get deviceid,serialnumber,size # Or from PowerShell: Get-Disk | Where-Object {$_.BusType -eq "USB"} | Select-Object Number,SerialNumber
- Execute the Add Command:
# Critical: Use this exact syntax with backslashes WBADMIN ENABLE BACKUP -addtarget:\\?\Volume{GUID}\
- Verify Registration:
# Check registered targets WBADMIN GET DISKS
The key differences from Microsoft's documentation:
- Using
\\?\Volume{GUID}\
syntax instead of just the GUID - Pre-formatting with NTFS before registration
- Temporary drive letter assignment during setup
For environments with multiple disks, use this PowerShell script:
# PowerShell script to register multiple USB backup targets
$disks = Get-Disk | Where-Object {$_.BusType -eq "USB" -and $_.OperationalStatus -eq "Online"}
foreach ($disk in $disks) {
$vol = Get-Partition -DiskNumber $disk.Number | Get-Volume
$guid = $vol.UniqueId.Split('\\')[-1].TrimEnd('}')
# Temporary drive letter assignment
$driveLetter = "Z"
Set-Partition -DiskNumber $disk.Number -PartitionNumber 1 -NewDriveLetter $driveLetter
# Format if needed
if ($vol.FileSystem -ne "NTFS") {
Format-Volume -DriveLetter $driveLetter -FileSystem NTFS -Confirm:$false
}
# Register with WSB
Start-Process "WBADMIN" -ArgumentList "ENABLE BACKUP -addtarget:\\?\Volume{$guid}\" -Wait
# Remove temporary drive letter
Remove-PartitionAccessPath -DiskNumber $disk.Number -PartitionNumber 1 -AccessPath "$($driveLetter):"
}
- Disk rotation still requires manual intervention - WSB won't automatically detect swapped disks
- Always verify backups complete successfully after configuration
- Consider using ReFS instead of NTFS for >2TB volumes
- For more than 10 disks, consider a dedicated backup appliance instead
For environments where WBADMIN proves unreliable, consider:
# Using PowerShell's WindowsServerBackup module
Import-Module WindowsServerBackup
Add-WBBackupTarget -Disk (Get-WBDisk -DiskNumber X)
This often provides better error reporting than WBADMIN.
Many Windows Server 2012 administrators face frustration when attempting to configure multiple USB drives as backup targets. The standard GUI approach often fails with the cryptic The system cannot find the path specified
error, leaving administrators searching for workarounds.
Windows Server Backup imposes artificial restrictions on removable drive usage. While Microsoft's KB2009365 offers three potential solutions, options 1 (USB hubs) and 2 (removing old disks) often prove impractical for real-world backup rotations.
The most promising approach involves using the wbadmin
command-line utility with disk GUIDs. Here's the complete technical workflow:
# First, identify your disk GUIDs
wmic diskdrive get deviceid,interfacetype,model,size
# Sample output for reference:
# DeviceID InterfaceType Model Size
# \\\\.\\PHYSICALDRIVE2 USB My Passport 0820 2000365289472
# \\\\.\\PHYSICALDRIVE3 USB Backup Plus 1234 2000365289472
# Then format and prepare the target (run as Administrator)
diskpart
list disk
select disk X (where X is your target disk)
clean
create partition primary
format fs=ntfs quick
assign letter=Z (temporary)
exit
# Finally, add to backup targets
wbadmin enable backup -addtarget:"{DISKGUID}" -quiet
Several technical nuances affect success:
- Always use quotes around GUIDs:
"{DISKGUID}"
- The disk must be formatted as NTFS before adding
- Run all commands from elevated Command Prompt
- Remove drive letters after adding as targets
For stubborn cases, consider these advanced techniques:
# Method 1: Registry modification
reg add "HKLM\SYSTEM\CurrentControlSet\Services\wbengine\SystemStateBackup" /v AllowSSBToAnyVolume /t REG_DWORD /d 1 /f
# Method 2: PowerShell script for rotation
$backupDisks = Get-Disk | Where-Object {$_.BusType -eq "USB"}
foreach ($disk in $backupDisks) {
$guid = $disk.Guid
& wbadmin enable backup -addtarget:"$guid" -quiet
}
When encountering The system cannot find the path specified
, check:
- Disk management console for hidden partitions
- WindowsServerBackup logs in Event Viewer (Applications and Services Logs)
- Security permissions on the target volume
- Whether the disk appears in
vssadmin list writers
For production environments with dozens of disks:
- Consider iSCSI targets instead of direct USB
- Implement a proper storage rotation script
- Use third-party backup solutions that handle USB rotation better
- Configure scheduled tasks to manage disk connections