使用rsync实现Linux文件夹同步,先用-av选项同步内容,注意源路径斜杠区别;通过--delete实现镜像同步,结合--exclude过滤文件,再用cron定时执行,确保数据一致。

在Linux系统中,同步两个文件夹的内容是一个常见需求,比如备份数据、部署项目或保持多台设备间文件一致。实现这一目标最常用且高效的方法是使用 rsync 命令。它支持增量同步、权限保留、软链接处理等多种功能,是文件夹同步的首选工具。
rsync 能够高效地同步源目录和目标目录的内容,只传输发生变化的部分,节省时间和带宽。
基本语法如下:
rsync [选项] 源目录 目标目录例如,将 /data/source 同步到 /backup/target:
rsync -av /data/source/ /backup/target/注意:源路径末尾的斜杠 "/" 很关键。
常用选项说明:
如果希望目标文件夹与源文件夹完全一致(包括删除多余文件),添加 --delete 参数:
rsync -av --delete /data/source/ /backup/target/这样,如果目标目录中有文件在源目录中已被删除,这些文件也会从目标中移除。
注意:使用 --delete 需谨慎,建议先用 --dry-run 模拟执行:
rsync -av --delete --dry-run /data/source/ /backup/target/查看会执行哪些操作,确认无误后再实际运行。
有时需要跳过某些临时文件、日志或缓存目录。可以用 --exclude 参数:
rsync -av --exclude='*.log' --exclude='temp/' /data/source/ /backup/target/支持通配符和正则表达式。也可以通过文件指定排除规则:
rsync -av --exclude-from='exclude-list.txt' /data/source/ /backup/target/其中 exclude-list.txt 每行写一个要排除的模式。
为了定期同步,可将 rsync 命令加入 crontab 实现自动化。
编辑当前用户的定时任务:
crontab -e添加一行,例如每天凌晨2点同步:
0 2 * * * rsync -av /data/source/ /backup/target/ >> /var/log/rsync.log 2>&1输出日志便于后续检查执行情况。
基本上就这些。掌握 rsync 的基本用法后,无论是本地同步还是通过SSH远程同步(只需把路径换成 user@host:/path),都能轻松应对。关键是理解参数含义,尤其是路径斜杠和 --delete 的影响,避免误删数据。
以上就是LINUX如何同步两个文件夹的内容_LINUX文件夹同步操作详解的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号