Debian 数据备份实用指南
术语澄清与总体策略
常用工具与命令
| 场景 | 工具 | 关键命令示例 | 说明 |
|---|---|---|---|
| 目录/文件全量备份 | tar | sudo tar -czvf /backup/home-$(date +%F).tar.gz /home |
打包并gzip压缩;适合一次性全量备份 |
| 目录/文件增量备份 | tar + 快照文件 | 首次:sudo tar -g /tmp/snap1.snap -czvf full.tar.gz /data;后续:sudo tar -g /tmp/snap1.snap -czvf inc-$(date +%F).tar.gz /data |
基于**-g**快照仅备份变化 |
| 本地/远程同步 | rsync | 本地:rsync -aAX --delete /data/ /backup/data/;远程:rsync -aAXz --delete /data/ user@remote:/backup/data/ |
-aAX保留权限/ACL/xattrs;--delete保持镜像一致 |
| 系统级快照 | Timeshift | sudo apt install timeshift -y;sudo timeshift-launcher |
基于 rsync/Btrfs 的系统快照,便于回滚 |
| 加密增量备份 | Duplicity | sudo apt install duplicity -y;duplicity --full-if-older-than 7D /data file:///backup/duplicity/ |
支持加密与增量,适合含敏感数据 |
| 整盘镜像 | dd | sudo dd if=/dev/sda of=/backup/sda-$(date +%F).img bs=4M status=progress |
适合迁移/克隆;注意目标空间与停机窗口 |
| 图形化/企业方案 | Deja Dup、Bacula、Amanda | 视环境安装与配置 | Deja Dup上手简单;Bacula/Amanda适合大规模/网络备份 |
--exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"}。--full-if-older-than 7D 表示“超过7天未做全量则触发一次全量”,其余为增量。自动化与异地存放
0 2 * * * /usr/bin/tar -czvf /backup/home-$(date +\%F).tar.gz /home
0 3 * * * /usr/bin/find /backup -name "home-*.tar.gz" -mtime +7 -delete
rsync -aAXz --delete -e ssh /data/ user@backup.example.com:/backup/data/
sudo mkdir -p /mnt/backup
sudo mount /dev/sdXn /mnt/backup
rsync -aAX --delete /data/ /mnt/backup/data/
恢复操作要点
sudo tar -xzvf /backup/home-2025-12-24.tar.gz -C /
rsync -aAX --delete /backup/data/ /data/
duplicity restore file:///backup/duplicity/ /restore/data/
sudo dd if=/backup/sda-2025-12-24.img of=/dev/sda bs=4M status=progress
注意事项与最佳实践