温馨提示×

怎么同步linux文件

小樊
59
2026-09-28 17:22:09
栏目: 智能运维

同步 Linux 文件常见有本地同步和远程同步两类,下面按使用场景给你讲清楚。


一、本地文件同步(同一台机器)

1. cp(最简单)

cp -a /source /dest
  • 适合一次性拷贝
  • 不支持增量同步

2. rsync(推荐)

rsync -av /source/ /dest/

常用参数:

  • -a:归档模式(保留权限、时间等)
  • -v:显示过程
  • --delete:删除目标中多余文件(保持完全一致)

示例(双向一致):

rsync -av --delete /data/ /backup/

二、远程文件同步(Linux 之间)

1. rsync + SSH(最常用)

rsync -avz -e ssh /local/path/ user@remote:/remote/path/

拉取远程文件:

rsync -avz -e ssh user@remote:/remote/path/ /local/path/

✅ 优点:

  • 增量同步
  • 安全(走 SSH)
  • 占用带宽小

三、自动定时同步

使用 crontab

crontab -e

每天凌晨同步:

0 0 * * * rsync -avz -e ssh /data/ user@host:/backup/

四、实时同步(文件变化立即同步)

1. inotify + rsync

适合小文件、实时性要求高

2. lsyncd(推荐)

apt install lsyncd

配置示例:

sync {
  default.rsyncssh,
  source="/data",
  host="192.168.1.10",
  targetdir="/backup"
}

五、分布式 / 多机同步

  • NFS:挂载远程目录(像本地一样)
  • GlusterFS / Ceph:分布式存储
  • Syncthing:点对点同步(图形化)

六、常见场景建议

场景 推荐方案
备份 rsync
实时同步 lsyncd
多服务器共享 NFS
跨网络同步 rsync over SSH

如果你能说明:

  • 是本地还是远程
  • 是否实时
  • 是否多台机器

我可以直接给你一套可用的命令或配置。

0 踩