BlogTutorialsHow to Back Up Your Windows PC to S3 Storage: Complete Guide (2025)

How to Back Up Your Windows PC to S3 Storage: Complete Guide (2025)

Adrian Silaghi
Adrian Silaghi
January 6, 2026
13 min read
8 views
#windows #backup #s3 #object storage #duplicati #rclone #cloudberry #ransomware
How to Back Up Your Windows PC to S3 Storage: Complete Guide (2025)

Windows built-in backup tools are limited, and OneDrive's free tier quickly runs out. For reliable, affordable off-site backup of your Windows PC, S3-compatible storage is the answer.

This guide covers three methods to back up Windows to S3: Duplicati (free and feature-rich), rclone (powerful CLI tool), and CloudBerry/MSP360 (enterprise features).

Why Back Up Windows to S3?

Feature Windows Backup OneDrive S3 Storage
Off-site Protection No Yes Yes
Free Storage N/A (local) 5GB 1TB (DanubeData)
Cost per TB $50-100 drive $9.99/mo €3.99/mo
Encryption BitLocker only Microsoft holds keys Client-side available
Versioning Limited 30 days Unlimited
Ransomware Protection Vulnerable Limited Version history protects

What You'll Need

  • Windows 10 or Windows 11
  • S3-compatible storage credentials:
    • Endpoint URL: s3.danubedata.com
    • Access Key ID
    • Secret Access Key
    • Bucket name

Method 1: Duplicati (Recommended - Free)

Duplicati is the best free backup solution for Windows. It offers encryption, deduplication, VSS support for open files, and a web-based interface.

Key Features:

  • 100% free and open source
  • AES-256 encryption
  • VSS (Volume Shadow Copy) for open files
  • Deduplication saves storage
  • Smart retention policies
  • Web-based UI or command line

Step 1: Install Duplicati

  1. Download from duplicati.com/download
  2. Run the installer (choose "Install as Windows Service" for automatic startup)
  3. After installation, Duplicati opens in your browser at http://localhost:8200

Step 2: Create Backup Job

  1. Click Add backup
  2. Select Configure a new backup
  3. Set backup name: "Windows PC Backup"
  4. Set a strong encryption passphrase (save this somewhere safe!)
  5. Click Next

Step 3: Configure S3 Destination

  1. Select S3 Compatible
  2. Configure connection:
# Duplicati S3-Compatible Configuration
Use SSL: Yes (checked)
Server (Custom): s3.danubedata.com
Bucket name: your-backup-bucket
Bucket create region: eu-central-1
Storage class: Standard
Client library to use: MinIO SDK

AWS Access ID: YOUR_ACCESS_KEY_ID
AWS Access Key: YOUR_SECRET_ACCESS_KEY

# Optional: Custom folder path
Folder path: windows-backup/pc-name
  1. Click Test connection
  2. Click Next

Step 4: Select Source Data

Choose what to back up:

# Essential Windows folders
✓ C:UsersYourNameDocuments
✓ C:UsersYourNameDesktop
✓ C:UsersYourNamePictures
✓ C:UsersYourNameVideos
✓ C:UsersYourNameDownloads
✓ C:UsersYourNameMusic

# Additional important locations
✓ C:UsersYourNameAppDataRoaming (app settings)
✓ D:Projects (if you have a projects drive)
✓ D:GamesSaves (game save files)

# Use filters to exclude
- *.tmp
- *.log
- Thumbs.db
- desktop.ini
- node_modules
- .git

Step 5: Configure Schedule

# Recommended schedule
Automatically run backups: Yes
Run: Daily at 2:00 AM

# Or more frequent for critical work
Run: Every 6 hours

Step 6: Set Retention Policy

# Smart retention keeps your backup efficient
Keep all backups: 7 days
Keep one backup per day: 30 days
Keep one backup per week: 6 months
Keep one backup per month: Forever

# Or use simple time-based retention
Delete backups older than: 90 days

Step 7: Advanced Options

# Recommended advanced settings
--vss                          # Enable VSS for open files
--snapshot-policy=auto         # Auto VSS when needed
--upload-speed-limit=10MB      # Limit bandwidth if needed
--concurrency-max-threads=4    # Parallel uploads
--retry-delay=10s              # Retry on network issues
--number-of-retries=5

Step 8: Run First Backup

  1. Click Save
  2. Click Run now
  3. Monitor progress in the Duplicati web interface
  4. Initial backup may take hours depending on data size

Restoring from Duplicati

# From web interface:
1. Click "Restore" in the left menu
2. Select your backup configuration
3. Choose files/folders to restore
4. Select restore destination
5. Click "Restore"

# Restore to original location or alternate location
# Can restore specific file versions

Method 2: Rclone for Windows

Rclone is a powerful command-line tool that works great on Windows. It's free, fast, and highly scriptable.

Step 1: Install Rclone

# Option 1: Using Chocolatey (recommended)
choco install rclone

# Option 2: Using Scoop
scoop install rclone

# Option 3: Manual download
# Download from https://rclone.org/downloads/
# Extract to C:
clone
# Add C:
clone to system PATH

Step 2: Configure Rclone

Open PowerShell or Command Prompt:

# Start configuration
rclone config

# Follow prompts:
n) New remote
name> danubedata
Storage> s3
provider> Other
env_auth> false
access_key_id> YOUR_ACCESS_KEY_ID
secret_access_key> YOUR_SECRET_ACCESS_KEY
region> eu-central-1
endpoint> https://s3.danubedata.com
location_constraint> (leave empty)
acl> private
Edit advanced config?> n
Keep this remote?> y
q) Quit config

Step 3: Test Connection

# List buckets
rclone lsd danubedata:

# List bucket contents
rclone ls danubedata:your-bucket

Step 4: Basic Backup Commands

# Sync Documents (PowerShell)
rclone sync "$env:USERPROFILEDocuments" danubedata:your-bucket/windows/documents --progress

# Sync with exclusions
rclone sync "$env:USERPROFILEDocuments" danubedata:your-bucket/windows/documents `
  --exclude "*.tmp" `
  --exclude "desktop.ini" `
  --exclude "Thumbs.db" `
  --progress

# Dry run (see what would happen)
rclone sync "$env:USERPROFILEDocuments" danubedata:your-bucket/windows/documents --dry-run

# Limit bandwidth (5 MB/s)
rclone sync "$env:USERPROFILEDocuments" danubedata:your-bucket/windows/documents `
  --bwlimit 5M --progress

Step 5: Create Backup Script

Create C:Scriptsackup-windows.ps1:

# Windows to S3 Backup Script
# Save as C:Scriptsackup-windows.ps1

$BUCKET = "your-bucket"
$REMOTE = "danubedata"
$LOG_FILE = "$env:USERPROFILEackup-log.txt"
$DATE = Get-Date -Format "yyyy-MM-dd HH:mm:ss"

# Start logging
Add-Content $LOG_FILE "=== Backup started: $DATE ==="

# Backup Documents
Write-Host "Backing up Documents..."
rclone sync "$env:USERPROFILEDocuments" "${REMOTE}:${BUCKET}/windows/documents" `
  --exclude "*.tmp" `
  --exclude "desktop.ini" `
  --log-file $LOG_FILE `
  --log-level INFO

# Backup Desktop
Write-Host "Backing up Desktop..."
rclone sync "$env:USERPROFILEDesktop" "${REMOTE}:${BUCKET}/windows/desktop" `
  --exclude "desktop.ini" `
  --log-file $LOG_FILE `
  --log-level INFO

# Backup Pictures
Write-Host "Backing up Pictures..."
rclone sync "$env:USERPROFILEPictures" "${REMOTE}:${BUCKET}/windows/pictures" `
  --exclude "Thumbs.db" `
  --log-file $LOG_FILE `
  --log-level INFO

# Backup Videos
Write-Host "Backing up Videos..."
rclone sync "$env:USERPROFILEVideos" "${REMOTE}:${BUCKET}/windows/videos" `
  --log-file $LOG_FILE `
  --log-level INFO

# Backup Downloads (optional - can be large)
# Write-Host "Backing up Downloads..."
# rclone sync "$env:USERPROFILEDownloads" "${REMOTE}:${BUCKET}/windows/downloads" `
#   --log-file $LOG_FILE `
#   --log-level INFO

# Backup AppDataRoaming (app settings)
Write-Host "Backing up AppData..."
rclone sync "$env:APPDATA" "${REMOTE}:${BUCKET}/windows/appdata" `
  --exclude "*.tmp" `
  --exclude "*.log" `
  --exclude "Cache/**" `
  --exclude "CachedData/**" `
  --log-file $LOG_FILE `
  --log-level INFO

# If you have a Projects folder
if (Test-Path "D:Projects") {
    Write-Host "Backing up Projects..."
    rclone sync "D:Projects" "${REMOTE}:${BUCKET}/windows/projects" `
      --exclude "node_modules/**" `
      --exclude "vendor/**" `
      --exclude ".git/**" `
      --exclude "*.log" `
      --log-file $LOG_FILE `
      --log-level INFO
}

$END_DATE = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
Add-Content $LOG_FILE "=== Backup completed: $END_DATE ==="

# Show Windows notification
[System.Reflection.Assembly]::LoadWithPartialName("System.Windows.Forms")
$notification = New-Object System.Windows.Forms.NotifyIcon
$notification.Icon = [System.Drawing.SystemIcons]::Information
$notification.BalloonTipTitle = "Backup Complete"
$notification.BalloonTipText = "Windows backup to S3 finished successfully"
$notification.Visible = $true
$notification.ShowBalloonTip(5000)

Write-Host "Backup completed!"

Step 6: Schedule with Task Scheduler

  1. Open Task Scheduler (search in Start Menu)
  2. Click Create Task (not Basic Task)
  3. Configure General tab:
Name: S3 Backup
Description: Daily backup to S3 storage
Run whether user is logged on or not: Yes
Run with highest privileges: Yes
  1. Configure Triggers tab:
New Trigger:
Begin the task: On a schedule
Daily, at 3:00 AM
Repeat every: 1 day
Enabled: Yes
  1. Configure Actions tab:
Action: Start a program
Program/script: powershell.exe
Arguments: -ExecutionPolicy Bypass -File "C:Scriptsackup-windows.ps1"
Start in: C:Scripts
  1. Configure Conditions tab:
Start only if computer is on AC power: Optional
Wake computer to run this task: Optional
Start only if network connection is available: Yes
  1. Click OK and enter your Windows password

Method 3: MSP360 (CloudBerry) Backup

MSP360 Backup (formerly CloudBerry) offers enterprise features like bare-metal recovery, image-based backup, and central management.

Key Features:

  • Image-based backup (full system recovery)
  • VSS for open files
  • Block-level backup
  • Ransomware protection
  • Central management console

Setup Steps:

  1. Download from msp360.com/backup
  2. Install and launch
  3. Click Add AccountS3 Compatible
  4. Configure:
# MSP360 S3 Configuration
Display Name: DanubeData
Service Point: s3.danubedata.com
Access Key: YOUR_ACCESS_KEY
Secret Key: YOUR_SECRET_KEY
Use SSL: Yes
Signature Version: 4
  1. Create backup plan (File Backup or Image Backup)
  2. Select folders and schedule

Which Windows Folders to Back Up

Folder Priority Notes
Documents Critical All user documents
Desktop Critical Desktop files
Pictures High Photos and images
Videos High Large - selective backup
AppDataRoaming Medium App settings, exclude caches
Downloads Medium Usually recreatable
Game Saves High %USERPROFILE%Saved Games
Projects Critical Exclude node_modules, .git

Files to Exclude from Backup

# Common Windows exclusions
desktop.ini
Thumbs.db
*.tmp
*.temp
*.log
~$*                    # Office temporary files
*.bak

# Development folders (recreatable)
node_modules
vendor
.git
bin
obj
packages

# Browser caches
*Cache*
*CachedData*
*Code Cache*

# System folders
$RECYCLE.BIN
System Volume Information
pagefile.sys
hiberfil.sys
swapfile.sys

Ransomware Protection

S3 versioning protects against ransomware. Even if files get encrypted, you can restore previous versions:

Enable Bucket Versioning

# Using AWS CLI
aws s3api put-bucket-versioning `
  --bucket your-bucket `
  --versioning-configuration Status=Enabled `
  --endpoint-url https://s3.danubedata.com

Recovery After Ransomware

# List all versions of a file
rclone ls danubedata:your-bucket/windows/documents/important.docx --s3-versions

# Restore specific version
rclone copy danubedata:your-bucket/windows/documents/important.docx `
  C:Restored --s3-version-id "VERSION_ID"

Comparison: Which Method?

Feature Duplicati Rclone MSP360
Cost Free Free $49.99+
GUI Web UI CLI Native app
VSS Support Yes No Yes
Encryption Built-in Via crypt Built-in
Image Backup No No Yes
Best For Most users Power users Business/IT

Get Started Today

Protect your Windows PC with reliable off-site backup:

  1. Create a DanubeData account
  2. Create a storage bucket
  3. Generate access keys
  4. Install Duplicati and follow this guide

👉 Create Your Backup Bucket - €3.99/month includes 1TB storage

Don't wait until your hard drive fails or ransomware strikes. Set up S3 backup today.

Need help with Windows backup? Contact our team for assistance.

Share this article

Ready to Get Started?

Deploy your infrastructure in minutes with DanubeData's managed services.