您的位置:首页 > 运维架构 > Linux

linux下rsync的配置以实现文件夹的同步及常见error总结

2015-11-16 22:28 519 查看
服务器端配置:

[root@Hammer home]# rpm -qa |grep rsync                 #检查系统是否安装了rsync软件包

rsync-2.6.9

如果没有,就去yum 或者apt-get install或者去官网服务器上下一个

vi /etc/xinetd.d/rsync

将disable=yes改为no

service rsync

{

        disable = no

        socket_type     = stream

        wait            = no

        user            = root

        server          = /usr/bin/rsync

        server_args     = --daemon

        log_on_failure  += USERID

}

2 配置rsync自动启动

[root@test etc]# chkconfig rsync on

[root@test etc]# chkconfig rsync --list

rsync           on

自动启动的方法还有  在 /etc/rc.d/rc.local 后面添加  /usr/bin/rsync  --daemon

vim /etc/rc.d/rc.local

3 配置rsyncd.conf

[root@test etc]# vim rsyncd.conf

uid = root

 # 或者写成nobody

gid = root  #

或者写成nobody

use chroot = no

max connections = 4 

#最大连接数

strict modes = yes

port = 873

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log   

#上述3个文件如果不是在root帐户下用最好配置成可以修改的文件。或者给这3个文件修改所有者为其他帐户。我采用的第一种方法,如果用hadoop用户,我将这几个文件放在了/home/hadoop/rsync下

[hadoop]        #模块名,这里相当于一个区分符,如果要同步多个文件夹就在这里区分,英文名叫做module

path = /usr/local/hadoop-0.20.2/conf  #要同步的文件的路径

comment = HADOOP

auth users = hadoop

uid = root

gid = root

secrets file = /etc/rsyncd.secrets   #存放rsync密码的文件

read only = no

list = no
hosts allow = 192.168.0.3 192.168.0.4  #设置允许访问的客户端多个客户端用空格隔开
hosts deny = *  #设置不允许访问的黑名单
[zookeeper]        #这里相当于一个区分符,如果要同步多个文件夹就在这里区分
path = /usr/zookeeper-3.3.5/conf
comment = ZOOKEEPER
auth users = hadoop
uid = root
gid = root
secrets file = /etc/rsyncd.secrets   #存放rsync密码的文件
read only = no
list = no 

4 确保etc/services中rsync端口号正确

[root@namenode etc]# vim /etc/services

rsync           873/tcp                         # rsync

rsync           873/udp                         # rsync

5 配置rsync密码(在上边的配置文件中已经写好路径)/etc/rsyncd.secrets(名字随便写,只要和上边配置文件里的一致即可),格式(一行一个用户)

[root@namenode etc]# vi /etc/rsyncd.secrets

root:hadoop
hadoop:hadoop   #hadoop为用户第二个为密码  中间有冒号隔开

6 配置rsync密码文件权限

[root@namenode ]# chown root.root /etc/rsyncd.secrets

[root@namenode ]# chmod 400 /etc/rsyncd.secrets  #或者600,除root外其他用户不能有任何权限

7 启动配置

[root@test home]# /etc/init.d/xinetd restart

Stopping xinetd:                                          
[  OK  ]

Starting xinetd:                                          
[  OK  ]

8 如果xinetd没有的话,需要安装一下

[root@namenode]# yum -y install xinetd

 启动rsync server

  RSYNC服务端启动的两种方法

9、启动rsync服务端(独立启动)

[root@namenode]# /usr/bin/rsync --daemon

10、检查rsync是否启动

[root@namenode]# lsof -i :873

COMMAND  PID USER   FD   TYPE DEVICE SIZE NODE NAME

xinetd  4396 root    5u  IPv4 633387       TCP *:rsync (LISTEN)

客户端配置

1 配置三个过程就可以了

  1.1 设定密码文件

  1.2 测试rsync执行指令

  1.3 将rsync指令放入工作排程(crontab)

[root@datanode1]# vi /etc/xinetd.d/rsync

# default: off

# description: The rsync server is a good addition to an ftp server, as it \

#       allows crc checksumming etc.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  rsync