Rsync 双盘备份指南 | AI生成和翻译

Home 2026.02

Question: 假设我有两个磁盘,需要备份总共 50 GB 的文件。我该如何使用 rsync 在我的电脑和两块便携式磁盘之间进行同步?

Answer:

对于使用 两块便携式磁盘(例如两个外部 USB 驱动器)的简单备份策略,最常用且可靠的方法是:

rsync 不支持 在一个命令中原生复制到多个目的地(除非使用高级 batch mode 或脚本),因此你需要运行两次——每个磁盘一次。

推荐的 rsync 命令 (macOS / Linux)

连接两个便携式磁盘。假设:

使用这套 安全且常用 的选项:

# 第一次备份 — 到磁盘 1
rsync -avh --progress --delete \
  --exclude='.*' \
  --exclude='Desktop' --exclude='Downloads' --exclude='Library' \
  ~/ImportantData/  "/Volumes/BackupDisk1/ImportantData Backup/"

# 然后到磁盘 2(相同的命令,只需更改目的地)
rsync -avh --progress --delete \
  --exclude='.*' \
  --exclude='Desktop' --exclude='Downloads' --exclude='Library' \
  ~/ImportantData/  "/Volumes/BackupDisk2/ImportantData Backup/"

关键选项说明:

第一次 vs. 后续备份

更好/更安全的变体

  1. 先添加 –dry-run(模拟运行 — 强烈推荐!):
rsync -avh --dry-run --progress --delete ~/ImportantData/ "/Volumes/BackupDisk1/ImportantData Backup/"

运行此命令 → 检查输出 → 确保没有意外删除任何内容。

  1. 保留修改时间 & extended attributes(在 macOS 上表现良好):
rsync -aEvh --progress --delete ...
# -E 保留 macOS 扩展属性 / resource forks
  1. 记录备份日志(对以后检查非常有用):
rsync -avh --progress --delete --log-file=~/backup-log-$(date +%Y-%m-%d).txt \
  ~/ImportantData/ "/Volumes/BackupDisk1/ImportantData Backup/"
  1. 使其完全自动化(编写一个脚本):

创建一个文件 backup.sh

#!/bin/bash

SOURCE="$HOME/ImportantData/"
DEST1="/Volumes/BackupDisk1/ImportantData Backup/"
DEST2="/Volumes/BackupDisk2/ImportantData Backup/"

echo "Backing up to Disk 1..."
rsync -avh --progress --delete --exclude='.*' "$SOURCE" "$DEST1"

echo "Backing up to Disk 2..."
rsync -avh --progress --delete --exclude='.*' "$SOURCE" "$DEST2"

echo "Backup finished at $(date)"

然后运行:bash backup.sh

针对便携式磁盘 50 GB 备份的提示

这能让你获得两个独立的、最新的备份——轮换使用它们(例如,将一个存放在异地)以获得更好的保护。

References:


Back Donate