在 Linux 中文件备份方式很多,取决于你是个人用户、服务器运维,还是生产环境。下面从常用命令 → 进阶方案 → 最佳实践系统讲一下。
cp、rsync 备份(基础)cp 简单备份(适合小文件)cp -a /data /backup/data_$(date +%F)
参数说明:
-a:保留权限、时间、软链接等(相当于 -dR --preserve=all)$(date +%F):按日期命名✅ 简单直接
❌ 不适合大目录、网络备份
rsync(最推荐)rsync 是 Linux 备份事实标准。
rsync -avh --delete /data/ /backup/data/
参数说明:
-a:归档模式-v:显示过程-h:人类可读--delete:目标与源保持一致(慎用)rsync -avz /data/ user@remote:/backup/data/
rsync -avh --link-dest=/backup/last /data/ /backup/new
✅ 支持增量
✅ 支持断点续传
✅ 适合服务器
tar -czvf backup_$(date +%F).tar.gz /data
解压:
tar -xzvf backup_2026-01-21.tar.gz
tar -czvf - /data | split -b 1G - backup.tar.gz.
dd if=/dev/sda of=/backup/sda.img bs=4M status=progress
⚠️ 会复制整个磁盘,包括空数据
适合桌面 / 服务器系统恢复
timeshift --create
crontab -e
0 2 * * * rsync -avh /data/ /backup/data/
支持去重、加密、增量
borg init /backup/repo
borg create /backup/repo::backup-$(date +%F) /data
✅ 企业级
✅ 节省空间
✅ 可远程
rsnapshot daily
特点:
mysqldump -u root -p dbname > db.sql
pg_dump dbname > db.sql
⚠️ 数据库不能只靠文件拷贝
| 场景 | 方案 |
|---|---|
| 个人 | rsync + tar |
| 开发 | rsync + cron |
| 服务器 | Borg / rsnapshot |
| 云服务器 | rsync + 对象存储 |
我可以直接给你一套可复制执行的备份方案。