How to automate backups to an external hard drive (no paid software needed)

A complete and field-tested guide to automatically back up files to an external USB drive, using only built-in tools. Includes scripts, real examples and step-by-step instructions for both Windows and Linux users.

SMART TIPS

ZeroCrash

7/20/20252 min read

How to automate backups to an external hard drive (no paid software needed)

TIPS – Tricks, Ideas, Practical Stuff.
Smart solutions tested in real life, explained with no fluff.
If it works, it’s here. If it’s junk, we throw it out before you see it.

Why avoid paid backup software?

Because if all you need is to regularly copy your folders to an external drive, paying €49/year for a shiny interface is overkill.
Windows and Linux already have everything you need onboard.
You just have to know where to look — and that’s what we’re here for.

✅ The Goal

Set up an automated backup system for your:

  • documents

  • photos

  • important folders

…to an external USB hard drive, in a totally automatic, safe and free way.
Works on both Windows 10/11 and Linux (Ubuntu, Mint, Debian, etc.).

🧩 Method 1 – Windows only (Robocopy + Task Scheduler)

📁 Step 1 – Connect your external drive

  • Plug it into your PC via USB

  • Note the drive letter, e.g. E:\

  • Create a backup folder, like E:\BackupZero

✍️ Step 2 – Create a batch file

  1. Open Notepad

  2. Paste this code:

robocopy "C:\Users\YourName\Documents" "E:\BackupZero\Documents" /MIR /R:1 /W:5 /LOG:"E:\BackupZero\log.txt"

  1. Save as: backup_auto.bat

  2. File type: All files

  3. Save it somewhere like: C:\Scripts

📌 /MIR mirrors the folder (adds new files, deletes removed ones)
📌 /R:1 retries once if it fails, /W:5 waits 5 seconds between attempts

⏱️ Step 3 – Automate with Task Scheduler

  1. Search for “Task Scheduler” in the Start menu

  2. Create a new task

  3. In General tab:

    • Name: BackupZero

    • Run with highest privileges

  4. In Triggers:

    • Choose “At log on” or “At disk insertion” (advanced)

  5. In Actions:

    • Run: C:\Scripts\backup_auto.bat

👉 Done! Now your backup runs on schedule or when the drive is connected.

🐧 Method 2 – Linux only (rsync + cron)

📁 Step 1 – Detect the external drive

Plug in your USB drive and run:

lsblk

Find the correct name, e.g. /dev/sdb1, and mount point like /media/username/BackupZero.

Double check with:

df -h

📦 Step 2 – Install rsync (if missing)

sudo apt install rsync

✍️ Step 3 – Create the backup script

Open your favorite editor, e.g. Nano:

nano ~/backupzero.sh

Write this:

#!/bin/bash

SRC="/home/your-user/Documents"

DEST="/media/your-user/BackupZero/Documents"

rsync -av --delete "$SRC/" "$DEST/"

Save and make it executable:

chmod +x ~/backupzero.sh

⏱️ Step 4 – Add it to your crontab

Open the crontab:

crontab -e

Add this line:

0 20 * * * /home/your-user/backupzero.sh

👉 That’s a backup every day at 8:00 PM.

You can also trigger it on disk insertion using udev rules, but that requires extra steps (let me know if you need them).

🔐 Logs & Security

  • Limit access to the script: chmod 700

  • Add a log file for every run:

Windows:

/LOG+:"E:\BackupZero\log.txt"

Linux:

rsync ... >> /media/your-user/BackupZero/log.txt

📌 Final tips

  • If your drive letter changes (e.g. E:\ becomes F:), update the script

  • Use specific folders, don’t back up the entire disk

  • Avoid tools that delete everything if the drive isn’t detected

  • Test your backup system before relying on it fully

✅ In short

You now have a complete guide to back up your files automatically to an external drive — using only built-in tools and zero cost.

Flexible, reliable, and fully customizable.

ZeroCrash