CentOS 7 Rsync数据同步服务环境部署

一.介绍:

rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步。已支持跨平台,可以在Windows与Linux间进行数据同步,Rsync使用TCP 873端口。

使用CentOS 7系统安装部署Rsync非常方便,安装光盘以及YUM源中都提供了rsync软件包,使用YUM方式安装即可。下面的案例演示了如何共享**/tmp/test目录,为此,我们需要创建/tmp/test目录**,并复制一些测试文件存放在该目录下。本例需要手动创建配置文件/etc/rsync.conf,该文件具体的语法格式在后面有详细的描述。

部署需知:

配置文件存放位置:

/etc/rsyncd.conf

密码文件存放位置:

/etc/rsyncd.secrets

欢迎语文件存放位置:

/etc/rsyncd.motd

使用rpm命令查看是否安装rsync服务

rpm -qa | grep rsync

如果没有安装则配置yum源安装服务:

yum install rsync -y

二.关闭防火墙SELINUX

systemctl stop firewalld.service

systemctl disable firewalld.service

三:创建共享目录(模块)

客户端:

mkdir /tmp/test # 自定义名称

向共享目录里复制一些文件 (创建也行)

cp /etc/init.d/* /tmp/test

四、编辑配置文件(详细): /etc/rsyncd.conf

vim /etc/rsync.conf

motd file = /etc/rsyncd.motd #设置服务器信息提示文件名称,在该文件中编写提示信息

transfer logging = yes ##开启Rsync数据传输日志功能

log file =/var/log/rsyncd.log #设置日志文件名称,可以通过log format参数设置日志格式

pid file =/var/run/rsyncd.pid #设置Rsync进程号保存文件名称

lock file =/var/run/rsync.lock #设置锁文件名称

port = 873 #设置服务器监听的端口号,默认为873

address = 192.168.100.129 #设置服务器所监听网卡接口的IP地址,这里服务器IP地址为192.168.0.254

uid = root #设置进行数据传输时所使用的账户名称或ID号,默认使用root

gid = root #设置进行数据传输时所使用的组名称或GID号,默认使用root

use chroot = no #设置user chroot为yes后,rsync会首先进行chroot设置,将根映射到path参数路径下,对客户端而言,系统的根就是path参数所指定的路径。但这样做需要root权限,并且在同步符号连接资料时仅会同步名称,而内容将不会同步。

read only = no #是否允许客户端上传数据,这里设置为只读。

max connections = 10 #设置并发连接数,0代表无限制。超出并发数后,如果依然有客户端连接请求,则将会收到稍后重试的提示消息

[common] #模块,Rsync通过模块定义同步的目录,模块以[name]的形式定义,这与Samba定义共享目录是一样的效果。在Rsync中也可以定义多个模块

comment = Web content #comment定义注释说明字串

path = /tmp/test #同步目录的真实路径通过path指定

ignore errors #忽略一些IO错误

#exclude = test/ #exclude可以指定例外的目录,即将common目录下的某个目录设置为不同步数据

auth users = root #设置允许连接服务器的账户,账户可以是系统中不存在的用户

secrets file = /etc/rsyncd.secrets #设置密码验证文件名称,注意该文件的权限要求为只读,建议权限为600,仅在设置auth users参数后有效

#hosts allow=192.168.0.0/255.255.255.0 #设置允许哪些主机可以同步数据,可以是单个IP,也可以是网段,多个IP与网段之间使用空格分隔

#hosts deny=* #设置拒绝所有(除hosts allow定义的主机外)

list= false #客户端请求显示模块列表时,本模块名称是否显示,默认为true

可以复制的

1.2 编辑配置文件:/etc/rsyncd.motd

vim /etc/rsyncd.motd

motd file = /etc/rsyncd.motd

transfer logging = yes

log file =/var/log/rsyncd.log

pid file =/var/run/rsyncd.pid

lock file =/var/run/rsync.lock

port = 873

address = 192.168.100.129

uid = root

gid = root

use chroot = no

read only = no

max connections = 10

[common]

comment = Web content

path = /common

ignore errors

#exclude = test/

auth users = root,zhangsan

secrets file = /etc/rsyncd.secrets

#hosts allow=192.168.0.0/255.255.255.0

#hosts deny=*

list= false

CentOS 7 Rsync数据同步服务环境部署_第1张图片

注释:test目录需要自己创建

1.3创建密码文件

密码配置文件存放位置:

/etc/rsyncd.secrets

写入配置文件:

echo "root:Yovole.c0m" >/etc/rsyncd.secrets

更改密码配置文件权限:

chmod 600 /etc/rsyncd.secrets

1.4 启动rsync

rsync --daemon

查看rsync端口(一个即可)

ps -ef|grep rsync

netstat -ntpl

添加欢迎语:

echo “welcome to access” >/etc/rsyncd.motd

四:客户端配置

使用rpm命令查看是否安装rsync服务

rpm -qa | grep rsync

如果没有安装则配置yum源安装服务:

yum install rsync -y

关闭防火墙SELINUX

命令懂的都懂

4.1 客户端写入密码文件

echo "Yovole.c0m" >/etc/rsyncd.secrets

4.2 更改密码配置文件权限:

chmod 600 /etc/rsyncd.secrets

五:测试

rsync -avzP /test/* [email protected]:/tmp/ #服务端执行(root密码)

rsync -avzP [email protected]::test /tmp/test #客户端执行(配置文件密码)

rsync -avzP --delete [email protected]::test --password-file=/etc/rsyncd.secrets /tmp/test/ #客户端执行(不需密码)

CentOS 7 Rsync数据同步服务环境部署_第2张图片

你可能感兴趣的:(Linux运维,服务器,centos,linux)