科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网服务器频道使用rsync进行数据同步

使用rsync进行数据同步

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

服务器A是192.168.0.100,服务器B是192.168.0.101,例如将101上的/www/downloads/new目录下的文件同步到192.168.0.100的/www/download目录下,则100上运行rsync作为服务器端,101做为客户端。

2008年3月17日

关键字: 操作系统 file 服务器 数据同步 rsync

  • 评论
  • 分享微博
  • 分享邮件

  

    问题
    使用rsync进行数据同步

      解决方案

  首先安装Rsync,比如在Redhat Fedora Linux上或者RHEL AS3上:

  rpm -ivh rsync-2.5.7-5.3E.i386.rpm

  安装完成。

  rsync客户端和服务器端都是同一个执行文件,只不过加的参数不一样。

  例如,服务器A是192.168.0.100,服务器B是192.168.0.101,例如将101上的/www/downloads/new目录下的文件同步到192.168.0.100的/www/download目录下,则100上运行rsync作为服务器端,101做为客户端。

  首先把192.168.0.100服务器端的配置文件建立起来。

  vi /etc/rsyncd.conf

  内容如下:

  uid = nobody

  gid = nobody

  use chroot = yes

  max connections = 4

  pid file = /var/run/rsyncd.pid

  lock file = /var/run/rsync.lock

  log file = /var/log/rsyncd.log

  [downloads]

  path = /www/downloads/

  ignore errors

  read only = false

  list = false

  hosts allow = 192.168.0.101/24

  hosts deny = 0.0.0.0/32

  auth users = backup

  secrets file = /etc/rsyncd.pwd

  找个配置文件中,uid和gid指明了运行身份,chroot表示连接后自动切换目录,read only=false是允许别的客户端向本机的服务器端上传。host allow和deny是限制连接地址。auth user是认证用户名,secrets file = /etc/rsyncd.pwd是表示认证用户名的时候到这里读取密码。

  接下来编辑密码文件:

  vi /etc/rsyncd.pwd

  backup:123456

  设置密码文件权限700:(权限不对会登陆不上)

  chmod 700 /etc/rsyncd.pwd

  然后启动rsync服务:

  /usr/bin/rsync --daemon

  把rsync加入自动启动脚本,开机后自动启动:

  echo "/usr/bin/rsync --daemon" >>/etc/rc.d/rc.local

  注意一下iptables必须允许rsync的873端口被连接。

  现在到192.168.0.101的客户端上,命令格式如下:

  rsync [-参数] 源地址路径 目标地址路径

  例如将101上的/www/downloads/new目录下的文件同步到192.168.0.100的/www/downloads目录中。

  则创建执行脚本:

  vi /root/rsync.sh

  rsync -vrtL --progress \

  /www/downloads/new/* \

  backup@192.168.0.100::downloads \

  --password-file=/root/rsync.pwd

  -v参数表示显示输出结果,r表示保持属性,t表示保持时间,L表示软link视作普通文件。

  创建客户端的密码文件:

  vi /root/rsync.pwd

  123456

  注意:客户端的密码脚本不带用户名。

  设置密码文件权限700:(权限不对会登陆不上)

  chmod /root/rsync.pwd

  将客户端脚本加入定期任务:

  echo "00 3 * * * root /usr/prima/etc/rsync.sh" >>/etc/crontab

  则每天凌晨3点运行同步。

  现在可以直接运行 /root/rsync.sh 观看效果。

  简单的rsync配置完成。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章