2台Linux 服务器文件夹同步,使用rsync工具

linux1:192.168.8.201

linux2:192.168.8.202

需同步的文件:/opt/upload

 在 CentOS/RHEL 上安装.两台都安装

sudo yum install rsync

 生成密钥对(如果还没有的话)

ssh-keygen -t rsa

 将公钥复制到目标服务器2

ssh-copy-id root@192.168.8.201 ssh-copy-id root@192.168.8.202

 将公钥复制到目标服务器1

ssh-copy-id root@192.168.8.201 ssh-copy-id root@192.168.8.201

创建同步脚本:sync_script.sh:实现202服务器的upload文件同步到201

#!/bin/bash
rsync -avz /opt/upload root@192.168.8.201:/opt/

参数说明​​:

  • -a:归档模式,保持文件属性(权限、时间戳等)。
  • -v:详细输出,让你看到同步过程。
  • -z:压缩传输,节省带宽。
  • --delete:​​重要​​!删除目标端有而源端没有的文件,保持严格一致。
  • 注意源文件夹路径后的 /:加上斜杠表示同步文件夹​​内部内容​​,不加斜杠则会在目标端创建一个同名文件夹来存放内容。

添加执行权限:

chmod +x sync_script.sh

设置定时任务:

crontab -e命令编辑当前用户的定时任务,添加一行。10分钟执行一次
*/10 * * * * /opt/sync_script.sh

 

posted @ 2025-09-27 13:12  悠悠乃  阅读(19)  评论(0)    收藏  举报