rsync 安装配置,服务器到客户端间同步文件

来源:互联网 发布:安卓运行php 编辑:程序博客网 时间:2024/04/19 03:42
安装 :centos 直接yum安装
服务器端:
启动rsync必须要装xinetd,它是靠它启动的,端口是873
<pre>
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.
service rsync
{
        disable = no #默认是yes,修改为no
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/rsync
        server_args     = --daemon
        log_on_failure  += USERID
}
</pre>
1,添加配置文件
<pre>
[root@localhost back]# vi /etc/rsyncd.conf

uid = rsync #如果 客户端向服务端推送文件,需要设置用户对分组 有写权限

gid = rsync #如果 客户端向服务端推送文件,需要设置用户对分组 有写权限

max connections = 200

timeout = 600

use chroot = no

read only =no

pid file=/var/run/rsyncd.pid

#host_allow =192.168.23.100

#syslog facility = local7

#log file=/var/log/rsyncd.log
[back]
path=/usr/local/back/
comment = back
ignore errors
read only = no
auth users = user01
secrets file=/etc/rsync.pwd
</pre>
注意 uid 和gid要设置,否则客户端向服务器端发文件,会出现
rsync: failed to set times on "/." (in back): Operation not permitted (1) 错误<!--more-->
如果只需要服务端到客户端可以直接设置
<pre>
uid = nobody
gid = nobody
</pre>
如果需要客户端发文件到服务端,要添加rsync用户
<pre>
groupadd rsync
useradd rsync -g rsync
chmod rsync:rysnc /usr/local/back
</pre>
2.设置密码
<pre>
echo user01:111 >>/etc/rsync.pwd
</pre>
3.启动服务器端服务
<pre>
/usr/bin/rsync --daemon
</pre>
客户端配置
<pre>
echo 111 >/etc/rsync.pwd
同步本地文件到服务器
rsync -vzrtopg --progress --delete --exclude=. --exclude=..  /usr/local/back/ user01@10.218.32.254::back  --password-file=/etc/rsync.pwd
同步服务器文件到本地
rsync -gvat --progress --delete user01@10.218.32.254::back  /usr/local/back --password-file=/etc/rsync.pwd
</pre>
删除服务器端服务
<pre>
kill `cat /var/run/rsyncd.pid`
</pre>
要想两边都不用输入密码,两边都设置为服务端,就不用设置密码文件了,这需要在内网内,困扰半年的问题解决了
密码文件要设置为
<pre>
chmod 0600 /etc/rsync.pwd
</pre>
原创粉丝点击