在Linux服务器环境下,文件同步是常见的需求,以下是主流的同步工具分类及推荐方案,可根据不同场景选择:
lsyncd
lua
sync {
default.rsync,
source = "/data",
target = "user@remote:/backup",
rsync = {
archive = true,
compress = true
}
}inotify-tools + rsync
inotifywait监控事件,触发自定义同步脚本bash
inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f %e' \
-e modify,create,delete /data | while read file; do
rsync -avz --delete /data/ user@remote:/backup/
donersync
bash
rsync -avz --delete -e ssh /local/path/ user@remote:/remote/path/bash
0 * * * * /usr/bin/rsync -avz /data/ backup-server:/backupUnison
bash
unison /local/path ssh://remote//remote/path -auto -batchSyncthing
http://server-ip:8384 配置同步节点GlusterFS / Ceph
DRBD (Distributed Replicated Block Device)
rclone
bash
rclone sync /local/path remote:bucket --progresss3cmd
bash
s3cmd sync /data/ s3://bucket/ --delete-removedCSync2
Lustre
rsync + cronlsyncdUnison 或 SyncthingrcloneGlusterFS 或 DRBDtar压缩再传输--dry-run参数测试命令md5deep)需要具体工具的详细配置指南可告知场景,我会提供针对性方案。