Linux备份采用“rsync增量同步+tar归档快照”双机制:rsync日常高效同步(-avh --delete),tar定期生成带日期的压缩包(如home_20250518.tar.gz)用于历史回溯,恢复时按需选择直接复制或解压后rsync反向同步。
Linux下用rsync和tar做文件备份,核心是“增量同步+归档快照”双保险:rsync负责日常高效同步,tar负责定期打包存档,两者结合既省空间又保安全。
rsync是备份主力,特点是跳过未修改的文件,大幅减少传输量和时间。常用组合参数-avh --delete含义如下:
示例命令(每日凌晨同步/home到备份盘):
rsync -avh --delete /home/ /backup/home/
注意:源路径末尾加斜杠 / 表示同步目录内容;不加则同步整个目录名。建议配合cron定时执行,比如每天2:00运行:
0 2 * * * rsync -avh --delete /home/ /backup/home/ >> /var/log/rsync_home.log 2>&1
rsync虽快,但无法回退到某天的历史状态。这时用tar生成带日期的压缩包,作为“时间点快照”:
示例脚本片段(保存为/usr/local/bin/backup_tar.sh):
tar -czf /backup/archive/home_$(date +\%Y\%m\%d).tar.gz \\
--exclude='/home/*/.cache' \\
--exclude='/home/*/.thumbnails' \\
/home
配合cron每周六执行:
0 3 * * 6 /usr/local/bin/backup_tar.sh >> /var/log/tar_backup.log 2>&1
恢复分两种场景,处理方式不同:
ete确保干净):tar -xzf /backup/archive/home_20250511.tar.gz -C /tmp/restore/ && \
rsync -avh --delete /tmp/restore/home/ /home/
操作前建议先对比确认目标路径、时间戳和文件数量,避免覆盖当前有效数据。
实际部署中几个关键细节常被忽略:
不复杂但容易忽略。把rsync当“实时镜像”,把tar当“历史底片”,两者配合,小团队也能建起可靠备份防线。
# linux
# 不存在
# 也能
# 两种
# 几个
# 按需
# 某天
# 跳过
# 双机
# 压缩包
# ssh
# delete
# var
# date
# 文件备份
# 解压
# ai
# 镜像