上一篇
Linux如何快速备份文件夹
- Linux
- 2025-07-06
- 2707
使用
cp -r命令复制文件夹;或用
tar命令打包压缩, ,
cp -r /源文件夹 /备份路径 或
tar -czvf 备份名.tar.gz /源文件夹
方法1:使用 cp 命令(简单复制)
适用场景:快速小文件备份
步骤:
cp -r /源文件夹路径 /备份目录路径
示例:
cp -r ~/Documents /backup/Documents_backup
参数说明:
-r:递归复制子目录和文件-v:显示复制进度(可选)
注意:cp 会覆盖同名文件,不适合增量备份。
方法2:使用 rsync 命令(增量备份推荐)
适用场景:高效同步/增量备份,支持本地和远程
步骤:
rsync -av --delete /源文件夹路径/ /备份目录路径
示例:

rsync -av --delete ~/Photos/ /backup/Photos/
参数解析:
-a:归档模式(保留权限、时间戳等)-v:显示详细过程--delete:删除备份端多余文件(保持严格同步)- 末尾的 表示复制文件夹内容(不加 会创建子目录)
远程备份示例(备份到另一台服务器):
rsync -avz -e ssh ~/Data/ user@remote-server:/backup/
方法3:使用 tar 命令(打包压缩)
适用场景:长期归档或节省空间
步骤:
tar -czvf 备份名.tar.gz /源文件夹路径
示例:

tar -czvf project_backup_$(date +%F).tar.gz ~/project/
参数说明:
-c:创建压缩包-z:用gzip压缩-v:显示过程-f:指定文件名$(date +%F):自动添加日期(如project_backup_2025-10-05.tar.gz)
解压命令:
tar -xzvf 备份名.tar.gz -C /解压目录
方法4:使用 dd 命令(磁盘级备份)
适用场景:完整分区/磁盘备份(需谨慎操作)
步骤:
dd if=/源分区路径 of=/备份文件路径/备份名.img bs=4M status=progress
示例:

dd if=/dev/sdb1 of=/backup/disk_backup.img bs=4M status=progress
警告:
if(输入文件)和of(输出文件)参数勿颠倒,否则可能覆盖数据!- 仅适用于块设备(如
/dev/sdb1),普通文件夹需先挂载为分区。
方法5:自动化备份脚本(cron定时任务)
步骤:
- 创建备份脚本
/backup_script.sh:#!/bin/bash rsync -av --delete ~/重要文件/ /backup/每日备份/ tar -czvf /backup/周备份/备份_$(date +%U).tar.gz ~/项目数据/
- 添加执行权限:
chmod +x /backup_script.sh
- 设置cron任务(每天凌晨备份):
crontab -e
添加行:
0 2 * * * /path/to/backup_script.sh
最佳实践建议
- 3-2-1原则:
- 保留3份备份
- 使用2种不同介质(如硬盘+云存储)
- 1份离线保存(防勒索软件)
- 验证备份:
- 定期检查备份文件完整性(
tar -tf 备份名.tar.gz查看内容)
- 定期检查备份文件完整性(
- 云存储方案:
- 使用
rclone同步到Google Drive、AWS S3等:rclone sync /本地文件夹 remote:云存储路径
- 使用
为什么这些方法可靠?
rsync:通过校验和避免数据损坏,增量备份节省时间空间tar:保留文件元数据(权限、所有者),压缩减少存储成本- 自动化脚本:避免人为遗漏,cron日志可审计
引用说明:
- Linux man 手册(命令详情:
man cp,man rsync,man tar,man dd)- 开源工具文档:rsync, rclone
- 备份策略参考:NIST SP 800-34(联邦机构容灾指南)
