CentOS 7安装部署Rsync数据同步服务器

一.介绍:

Rsync(remote sync)是UNIX及类UNIX平台下一款神奇的数据镜像备份软件,它不像FTP或其他文件传输服务那样需要进行全备份,Rsync可以根据数据的变化进行差异备份,从而减少数据流量,提高工作效率。你可以使用它进行本地数据或远程数据的复制,Rsync可以使用SSH安全隧道进行加密数据传输。Rsync服务器端定义源数据,Rsync客户端仅在源数据发生改变后才会从服务器上实际复制数据至本地,如果源数据在服务器端被删除,则客户端数据也会被删除,以确保主机之间的数据是同步的。Rsync使用TCP 873端口
在这里插入图片描述
使用CentOS 7系统安装部署Rsync非常方便,安装光盘以及YUM源中都提供了rsync软件包,使用YUM方式安装即可。下面的案例演示了如何共享**/common目录,为此,我们需要创建/common目录**,并复制一些测试文件存放在该目录下。本例需要手动创建配置文件/etc/rsync.conf,该文件具体的语法格式在后面有详细的描述。

部署需知:

配置文件存放位置:

/etc/rsyncd.conf

密码文件存放位置:

/etc/rsyncd.secrets

欢迎语文件存放位置:

/etc/rsyncd.motd

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

rpm -qa | grep rsync

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

yum install rsync -y

二.关闭防火墙SELINUX

命令懂的都懂

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

(1)客户端:

mkdir /common   #(名字随便)

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

cp /etc/init.d/* /common/

1.1 编辑配置文件(详细): /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 = /common    #同步目录的真实路径通过path指定
ignore errors     #忽略一些IO错误
#exclude = test/    #exclude可以指定例外的目录,即将common目录下的某个目录设置为不同步数据
auth users = root,zhangsan  #设置允许连接服务器的账户,账户可以是系统中不存在的用户
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

注释:common 需要自己创建
1.3创建密码文件
密码配置文件存放位置:

/etc/rsyncd.secrets

写入配置文件:

echo "root:123" >/etc/rsyncd.secrets
echo "zhangsan:123" >/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 "123" >/etc/rsyncd.secrets

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

chmod 600 /etc/rsyncd.secrets

五:测试

rsync -avzP /common/*  root@192.168.100.129:/mnt  #服务端执行(root密码)
rsync -avzP zhangsan@192.168.100.129::common /mnt   #客户端执行(配置文件密码)
rsync -avzP --delete zhangsan@192.168.100.129::common --password-file=/etc/rsyncd.secrets /mnt #客户端执行(不需密码)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值