rsync服务主要用于不一样主机间的文件同步和备份,固然也能够用在同一主机上。node
1、实验环境
rsync server:CentOS7.3
rsync client: CentOS7.6vim
2、rsync server端配置服务器
#确认系统是否安装rsync,CentOS7 默认是安装了 [root@localhost ~]# rpm -aq|grep rsync rsync-3.0.9-17.el7.x86_64
#编辑rsync配置文件 #vim /etc/rsyncd.conf uid = root gid = root use chroot = no max connections = 2 strict modes = yes port = 873 pid file = /var/run/rsyncd.pid lock file = /var/run/rsyncd.lock log file = /var/log/rsyncd.log [hadoop] path = /yao/ comment = self define file read only = yes list = no auth users = hadoop secrets file = /etc/rsyncd.secrets hosts allow = 192.168.60.3 #设置访问客户端的白名单 #hosts deny = * #设置客户端访问的黑名单
在正式rsync配置文件中最好不要有注释,可能会使得配置报错,或者客户端认证不经过
ide
#对上面的配置进行简单的介绍 [hadoop]#模块名,格式 [module-name] path = /yao/#须要同步的目录 comment = self define file#注释,能够随便写 read only = yes#客户端只能从服务端读取文件,不能上传文件到sync服务端 list = no auth users = hadoop#认证的用户,不用系统中存在,能够随便写,到时候再secrets file的配置文件中写就能够了 secrets file = /etc/rsyncd.secrets#client使用的配置用户名密码,格式:username:password hosts allow = 192.168.60.3 #设置访问客户端的白名单 #hosts deny = * #设置客户端访问的黑名单
#vim /etc/rsyncd.secrets hadoop:hadoop #服务器端的secrets文件必需要有用户名和密码
一样的在正式的配置中不要有"#服务器端***"的注释oop
3、客户端配置
客户端编辑登陆rsync服务端须要使用的密码,只填写用户名就能够了ui
#vim /etc/rsyncd.secrets hadoop
上传 rsync -avz --password-file=/etc/rsyncd.secrets /opt/hadoop/etc/hadoo hadoop@namenode::hadoop 下载 rsync -avz --progress --delete --password-file=/etc/rsyncd.secrets hadoop@namenode::hadoop /opt/hadoop/etc/hadoop 上传(前提是服务器端的配置文件运行写的权限) rsync -avz --password-file=[客户端登陆时候使用的帐号密码] [须要上传的文件路径] [auth_user]@IP::[模块名] 下载 rsync -avz --progress --delete --password-file=[密码文件路径] [auth_user]@IP::[模块名]
因为在服务端配置了read only = yes 因此本次实验是没法上传文件的
-a 至关于 -rlptgoD 的集合
-u 等同于 –update,在目标文件比源文件新的状况下不更新
-v 显示同步的文件
--progress 显示文件同步时的百分比进度、传输速率code
--delete 若是源目标系统中不存在 , 同步系统中的文件将被删除
!!重要!!密码配置的相关文件的全系记得修改成600,不然会报错。
# chmod 600 /etc/rsyncd.secretsserver
可使用man rsync看看相关参数说明,这里就不在赘述了hadoop