码迷,mamicode.com
首页 > 其他好文 > 详细

Rsync安装手册

时间:2015-08-04 13:39:09      阅读:139      评论:0      收藏:0      [点我收藏+]

标签:rsync

Rsync安装手册

                      ---dxwang

什么是rsync

rsync,remote synchronize顾名思意就知道它是一款实现远程同步功能的软件,它在同步文件的同时,可以保持原来文件的权限、时间、软硬链接等附加信息。 rsync是用 “rsync 算法”提供了一个客户机和远程文件服务器的文件同步的快速方法,而且可以通过ssh方式来传输文件,这样其保密性也非常好,另外它还是免费的软件。

rsync 包括如下的一些特性:

  能更新整个目录和树和文件系统;
  有选择性的保持符号链链、硬链接、文件属于、权限、设备以及时间等;
  对于安装来说,无任何特殊权限要求;
  对于多个文件来说,内部流水线减少文件等待的延时;
  能用rsh、ssh 或直接端口做为传输入端口;
  支持匿名rsync 同步文件,是理想的镜像工具

检查rsync

rpm -qa|grep rsync

安装服务端

1、  在root用户操作

2、  添加两个文件/etc/rsync.pas和/etc/rsyncd.conf

rsyncd.conf

uid = root

gid = root

use chroot = no

max connections = 4

strict modes = yes

port = 873

 

 

[ext-lib]

path = /data/storm/ext-lib/

comment = try to realize file synchronization

ignore errors

read only = no

list = no

auth users = storm

secrets file = /etc/rsync.pas

hosts allow = 10.27.95.101 // 客户端的IP地址,多IP以逗号分隔

hosts deny = 0.0.0.0/0

rsync.pas

storm_bak

3、  安装inotify-tools

tar -zxvf inotify-tools-3.14.tar.gz

cd inotify-tools-3.14

./configure --prefix=/usr/local/inotify

make

make install

  

4、  启动rsync-monitor.sh(在/data/storm/rsync)

#!/bin/bash

ps -ef|grep "/usr/bin/rsync --daemon"|grep -v grep > /data/storm/rsync/rsync-info.log

num=`grep "/usr/bin/rsync --daemon" /data/storm/rsync/rsync-info.log|wc -l`

echo $num

if [ $num -eq 0 ];then

    echo "[$(date +‘%F %T‘)] rsync is down,need restart"

    echo "-----" >> /data/storm/rsync/rsync-info-forever.log

    cat /data/storm/rsync/rsync-info.log >> /data/storm/rsync/rsync-info-forever.log

    /usr/bin/rsync --daemon

else

    echo "[$(date +‘%F %T‘)] rsync is running"

fi

5、  启动rsync-inotify-monitor.sh(在/data/storm/rsync)

 #!/bin/bash

host=10.27.95.101,10.27.95.102 // 客户端IP

src=/data/storm/ext-lib/

des=ext-lib

user=storm

/usr/local/inotify/bin/inotifywait -mrq --timefmt ‘%d/%m/%y %H:%M‘ --format ‘%T %w%f%e‘ -e modify,delete,create,attrib $src | while read files

do

IFS=,

for each in $host

do

    /usr/bin/rsync -vzrtopg --delete --progress --password-file=/etc/rsync.pas $src $user@$each::$des

done

echo "${files} was rsynced" >> /data/storm/rsync/rsync-inotify.log 2>&1

done

安装客户端

1、  在目录/data/storm/rsync目录上传三个文件rsyncd.conf、rsync.pas和rsync-monitor.sh

rsyncd.conf

uid=root

gid=root

use chroot=no

max connections=4

strict modes=yes

 

 

[ext-lib]

path = /data/storm/ext-lib/

comment = try to realize file synchronization

ignore errors

read only = no

list = no

auth users = storm

secrets file = /data/storm/rsync/rsync.pas

hosts allow = 10.27.95.100 // 服务端IP

hosts deny = 0.0.0.0/0

rsync.pas,rsync.pas的权限是600

storm:storm_bak

rsync-monitor.sh

#!/bin/bash

num=`ps -ef|grep "/usr/bin/rsync --daemon"|wc -l`

if [ $num -eq 1 ];then

    echo "[$(date +‘%F %T‘)] rsync is down,need restart"

    /usr/bin/rsync --daemon --config=/data/storm/rsync/rsyncd.conf

else

    echo "[$(date +‘%F %T‘)] rsync is running"

fi

2、  启动rsync-monitor.sh

版权声明:本文为博主原创文章,未经博主允许不得转载。

Rsync安装手册

标签:rsync

原文地址:http://blog.csdn.net/wwwxxdddx/article/details/47274151

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!