Self-Hosted Alternatives to Time Machine

Why Replace Time Machine?

Time Machine is Apple’s built-in backup solution for macOS. It works well with Apple hardware — AirPort Time Capsule (discontinued), external USB drives, or macOS Server (discontinued). The problem:

  • Hardware dependency. Apple discontinued both Time Capsule and macOS Server. Official network backup destinations are gone.
  • Slow network backups. Time Machine over SMB to a NAS is notoriously unreliable and slow. Backup corruption is common.
  • No encryption by default. Network Time Machine backups are unencrypted unless you specifically enable it.
  • macOS only. If you have Linux or Windows machines alongside your Mac, Time Machine doesn’t help them.
  • No cloud option. Time Machine only backs up to local storage. No off-site protection unless you manually rotate drives.
  • Space inefficiency. Time Machine’s approach to versioning uses more space than modern deduplication tools.

Best Alternatives

BorgBackup + Borgmatic — Best Local Replacement

BorgBackup with Borgmatic provides automated, deduplicated, encrypted backup to any SSH-accessible server or NAS. It typically achieves 50-70% storage savings compared to Time Machine’s block-level copies.

Why it replaces Time Machine: Scheduled automated backups with versioning, point-in-time restores, and dramatically better storage efficiency. Works from macOS, Linux, and WSL.

Setup difficulty: Medium. Requires installing Borg on your Mac and configuring Borgmatic.

Read our full guide: How to Self-Host BorgBackup

Restic — Best for Cloud + Local Hybrid

Restic backs up to both local NAS and cloud storage (S3, Backblaze B2, Wasabi). This gives you the local speed of Time Machine plus off-site protection — something Time Machine can’t do at all.

Why it replaces Time Machine: Encrypted, deduplicated backup to any destination. Set up a cron job and it runs automatically, backing up to both your NAS and B2 for 3-2-1 compliance.

Setup difficulty: Medium. CLI-based, scheduled via cron or launchd on macOS.

Read our full guide: How to Self-Host Restic

Kopia — Best Managed Experience

Kopia includes a web UI and built-in scheduling that makes it the closest to Time Machine’s “set and forget” experience. It supports multiple backup destinations and can run as a background service on macOS.

Why it replaces Time Machine: Web-based snapshot management, automated scheduling, and cross-platform support. Browse and restore files through the UI without command-line knowledge.

Read our full guide: How to Self-Host Kopia

Samba with Time Machine Support — Most Compatible

If you want to keep using Time Machine but need a self-hosted destination, a Linux server running Samba with fruit:time machine = yes acts as a network Time Machine target.

Docker Compose for Samba Time Machine:

services:
  samba:
    # No semver Docker tags published — only architecture tags available
    image: dperson/samba:latest
    container_name: samba-timemachine
    restart: unless-stopped
    ports:
      - "445:445"
    volumes:
      - timemachine-data:/backup
    environment:
      TZ: UTC
      USERID: 1000
      GROUPID: 1000
    command: >
      -u "tmuser;changeme"
      -s "TimeMachine;/backup;yes;no;no;tmuser;tmuser;;"
      -p
    tmpfs:
      - /tmp

volumes:
  timemachine-data:

Enable Time Machine discovery via Avahi/mDNS for automatic detection on your Mac.

Why it replaces Time Machine: You keep the exact same macOS Time Machine experience — but the backup target is your own server instead of a discontinued Apple product.

Limitation: This only works for macOS. It doesn’t solve the multi-platform backup problem.

Feature Comparison

FeatureTime MachineBorgBackupResticKopiaSamba TM
macOS integrationNativeCLI + cronCLI + cronGUI appNative
Linux supportNoYesYesYesNo (server only)
Windows supportNoVia WSLYesYesNo
DeduplicationBlock-levelContent-definedContent-definedContent-definedBlock-level
CompressionNoYes (zstd, lz4)Yes (zstd)Yes (zstd)No
EncryptionOptionalAlwaysAlwaysAlwaysOptional
Cloud backupNoVia SSH/rcloneYes (S3, B2)Yes (S3, B2)No
Storage efficiencyLowHighHighHighLow
Web UINoNoNoYesNo
Point-in-time restoreYesYesYesYesYes

Migration Guide

Step 1: Keep Time Machine Running (Temporarily)

Don’t disable Time Machine until your new backup solution is verified. Run both in parallel for at least 2 weeks.

Step 2: Install Your Chosen Tool on macOS

For BorgBackup:

brew install borgbackup borgmatic

For Restic:

brew install restic

For Kopia:

brew install kopia

Step 3: Configure and Run Initial Backup

Point your tool at the same directories Time Machine protects. By default, Time Machine backs up everything except system files:

# Common directories to back up
/Users/yourusername/
/Applications/
/Library/

Exclude large, recreatable directories:

# Common exclusions
~/Library/Caches
~/.Trash
~/Downloads
node_modules
.git

Step 4: Schedule Automatic Backups

macOS launchd (recommended over cron on macOS):

Create ~/Library/LaunchAgents/com.selfhosting.backup.plist:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.selfhosting.backup</string>
    <key>ProgramArguments</key>
    <array>
        <string>/opt/homebrew/bin/restic</string>
        <string>backup</string>
        <string>/Users/yourusername</string>
        <string>--repo</string>
        <string>sftp:backup@nas:/backup/mac</string>
    </array>
    <key>StartInterval</key>
    <integer>3600</integer>
    <key>StandardOutPath</key>
    <string>/tmp/backup.log</string>
</dict>
</plist>

Load it:

launchctl load ~/Library/LaunchAgents/com.selfhosting.backup.plist

Step 5: Verify and Disable Time Machine

  1. Test a restore from your new backup
  2. Verify file integrity and permissions
  3. Disable Time Machine: System Settings → General → Time Machine → Off
  4. Optionally reformat the old Time Machine drive for other use

Cost Comparison

Time Machine + External DriveSelf-Hosted (NAS)Self-Hosted (Cloud)
One-time cost$60-120 (USB drive)$200-400 (NAS)$0
Monthly cost$0$0~$3-6 (B2 storage)
3-year cost$60-120$200-400$108-216
Multi-platformmacOS onlyAll platformsAll platforms
Off-site backupNoNo (unless remote NAS)Yes
EncryptionOptionalAlways onAlways on

What You Give Up

  • One-click restore from Recovery Mode. Time Machine integrates with macOS Recovery to restore entire systems. Self-hosted tools require booting into a live OS first.
  • Finder integration. Time Machine’s “enter Time Machine” visual browser is unique. Self-hosted tools use FUSE mounts or CLI for browsing snapshots.
  • Automatic exclusion of system files. Time Machine knows which macOS files are recreatable. Self-hosted tools require you to configure exclusions manually.
  • Zero configuration. Time Machine works with zero setup — plug in a drive and click “Use as Backup Disk.” Self-hosted tools need initial configuration.

For most Mac users, the migration takes an afternoon. The ongoing benefits — better storage efficiency, cross-platform support, and cloud backup capability — are worth it.

Comments