Best Windows Backup Solutions: Evaluating Amanda, Bacula, and BackupPC for Reliable VSS-Compatible Client Deployment


2 views

When implementing an automated backup solution for Windows XP machines in an educational environment, several critical factors emerge:

  • Must support Volume Shadow Copy Service (VSS) for Outlook PST file backups
  • Requires completely unattended operation
  • Needs simple restoration procedures for non-technical staff
  • Must work reliably over WAN connections
  • Budget constraints typical of small non-profits

Let's analyze the three main contenders from a Windows client perspective:

Bacula Windows Client

The Bacula Win32 client (bacula-fd) provides:

# Sample bacula-fd.conf configuration
FileDaemon {
  Name = client01-fd
  FDport = 9102
  WorkingDirectory = "C:/bacula/working"
  PidDirectory = "C:/bacula/pid"
}

Director {
  Name = backup-dir
  Password = "client_password"
}

FileSet {
  Name = "WindowsFull"
  Include {
    File = "C:/Documents and Settings"
    File = "C:/Outlook"
    Options {
      signature = MD5
      compression = GZIP
      sparsesupport = yes
    }
  }
}

Key advantages include native VSS support through the Enable VSS = yes directive and robust error handling.

Amanda Windows Client

The Amanda Windows client uses cygwin and has these characteristics:

  • Requires more manual configuration for VSS through scripts
  • Example VSS script snippet:
@echo off
set BACKUP_APP=amandabackup
set VSHADOW_EXE="C:\Program Files\Amanda\vshadow.exe"

%VSHADOW_EXE% -script=setvars.cmd -exec=%BACKUP_APP% C:

BackupPC Limitations

While BackupPC excels in Linux environments, its Windows support lacks:

  • No native VSS implementation
  • Requires SMB/CIFS shares which may lock Outlook files
  • No built-in mechanism for open file handling

For your specific case with three Windows XP machines, I recommend:

  1. Bacula as primary solution due to its robust Windows client
  2. Configure VSS specifically for Outlook files:
FileSet {
  Name = "OutlookBackup"
  Enable VSS = yes
  Include {
    File = "C:/Documents and Settings/*/Local Settings/Application Data/Microsoft/Outlook"
    Options {
      ignorecase = yes
      sparsesupport = yes
      signature = MD5
    }
  }
}

If Bacula proves too complex for your needs, evaluate:

  • Duplicati - Lightweight with built-in VSS support
  • UrBackup - Simple web interface for restores
  • Veeam Agent Free - Excellent for image-based backups

Implement these checks for reliability:

# Sample monitoring script for Bacula
#!/bin/bash

STATUS=$(echo "status director" | bconsole | grep "Terminated")
if [[ $STATUS == *"Error"* ]]; then
  echo "Backup failed!" | mail -s "Backup Alert" admin@example.com
fi

When dealing with legacy Windows XP systems in an educational environment, several critical factors emerge:

  • VSS Support: Essential for backing up locked files like Outlook PSTs
  • WAN Resilience: Must handle unreliable connections without manual intervention
  • Agent Reliability: Should survive XP's unstable environment

Amanda Implementation

The Amanda Windows Client (awclient) provides surprisingly good XP support when configured properly:

# Sample amanda-client.conf for XP
property "tapecycle" "10"
property "runtapes" "1"
property "ctimeout" "120"
property "resend time" "900"
property "max-dle-by-volume" "1"

Key advantages:

  • Built-in OpenVMS driver handles locked files
  • Compression occurs client-side before WAN transfer
  • Can trigger via Scheduled Tasks without user login

Bacula Considerations

While Bacula's Win32-FD generally works well, XP-specific quirks require attention:

# bacula-fd.conf adjustments for XP
FileDaemon {
  Name = client01-fd
  FDport = 9102
  Maximum Concurrent Jobs = 2
  FDAddress = 0.0.0.0
  Heartbeat Interval = 60 seconds
}

Critical caveats:

  • Requires manual VSS script integration
  • TLS certificate handling often fails on XP
  • Job restart behavior isn't WAN-optimized

For Amanda on XP, I recommend this batch script for scheduled backups:

@echo off
set AMANDA_BIN="C:\Program Files\Amanda\bin"
set CYGWIN_BIN="C:\cygwin\bin"

%CYGWIN_BIN%\ssh.exe -i /amanda_id_rsa amandabackup@backup-server \
"%AMANDA_BIN%\amandad.exe" \
--client=daycare-xp01 \
--config=DailySet \
--logfile=C:\amanda\amandad.log

The most reliable remote recovery method I've found uses Amanda's amrecover with SSH tunneling:

# On your admin workstation:
ssh -L 10080:localhost:10080 backup-server \
'amrecover -s localhost -p 10080 -t daycare-xp01'

# Then in amrecover prompt:
settape DailySet-001
list
add Documents/Outlook/backup.pst
extract

For environments where open-source proves problematic, consider:

  • Duplicati with its built-in VSS and WAN optimization
  • UrBackup specifically designed for legacy Windows
  • Veeam Agent Free (newest version still supports XP)