rsync是linux下的文件同步服务,本文演示了在CentOS 6系统上配置rsync的过程。
1,服务端配置
网上有很多教程在配置rsync服务端的时候,都先配置了xinetd服务,事实上这是不必要的,rsync也能脱离xinetd以独立进程的方式运行,所以本文未配置xinetd。
$ yum install rsync -y$ mkdir /etc/rsyncd$ touch /etc/rsyncd/rsyncd.conf #主配置文件$ touch /etc/rsyncd/rsyncd.secrets #客户端连接时使用的用户和密码$ touch /etc/rsyncd/rsyncd.motd #服务端提示信息文件$ chmod 600 /etc/rsyncd/rsyncd.secrets$ chown root:root /etc/rsyncd/rsyncd.secrets
建立配置文件
$ vi /etc/rsyncd/rsyncd.confuid = rootgid = root use chroot = no read only = yes #只读,不让客户端上传文件到服务器address = 192.168.1.114 #服务端的IP,写错将无法启动进程port = 873hosts allow = 192.168.1.0/24 172.16.0.0/255.255.0.0hosts deny = *max connections = 5pid file = /var/run/rsyncd.pidmotd file = /etc/rsyncd/rsyncd.motdsecrets file = /etc/rsyncd/rsyncd.secretslog file = /var/log/rsync.logtransfer logging = yeslog format = %t %a %m %f %bsyslog facility = local3timeout = 300[mytmp]path = /tmp/zhang3/list = yesignore errorsauth users = zhang3 #只有rsyncd.secrets文件中的zhang3用户可以同步此目录[townhome]path = /home/townlist = no #服务器上同步数据的目录在服务器模块上列出来ignore errors #忽略IO错误auth users = town #只有rsyncd.secrets文件中的town用户可以同步此目录comment = hitown #客户端连接时的提示
设置客户端连接时使用的用户名和密码
$ vi /etc/rsyncd/rsyncd.secretstown:hello123zhang3:123456
设置客户端连接时看到的提示信息
$ vi /etc/rsyncd/rsyncd.motd+++++++++++++++++++++++++++++++++++++Welcome to zhukun.net rsync server!+++++++++++++++++++++++++++++++++++++
启动服务端,设置开机自启动
$ /usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf$ echo '/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf' >> /etc/rc.local
2,客户端配置
$ yum install rsync -y$ echo 123456 > /tmp/rsync.password #将zhang3的密码写入本地$ chmod 600 /tmp/rsync.password #重要,rsync会检查权限,如果不是600会报出错误
列出文件
$ rsync --list-only --password-file=/tmp/rsync.password zhang3@192.168.1.114::mytmp
同步文件到本地的目录
$ rsync -auvzP --delete --password-file=/tmp/rsync.password zhang3@192.168.1.114::mytmp /tmp/zhang3
参数说明:
-a 相当于-rlptgoD,-r是递归 -l是链接文件,意思是拷贝链接文件;-p表示保持文件原有权限;-t保持文件原有时间;-g保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖更新的文件) -z 传输时压缩;-P 传输进度;-v 传输时的进度等信息,和-P有点关系,自己试试。--delete 表示客户端的数据要与服务器端完全一致,如果客户端目录里有服务器上不存在的文件,则删除。
原文地址:CentOS6配置rsync服务, 感谢原作者分享。 对于旅行,从来都记忆模糊。记不得都去了哪些地方,