rsync 实时同步案例

准备两台服务


服务器 IP
web01  10.0.0.7
backup  10.0.0.41

rsync 介绍

同步工具,把一台主机的数据同步到另一台主机上
扩展:scp 源文件 目标 
端口:873
ssh:22
ftp:21
端口范围:1-65535
运行模式:C/S 推目录 scp -r /etc root@10.0.0.41:/ 推文件 scp /etc/hostname root@10.0.0.41:/ 拉文件 scp root@10.0.0.41:/root /tmp/abc.txt 拉目录 scp -r root@10.0.0.41:/root /etc

架构 

C/S 架构
Client/Server

B/S 架构
Browser/server

rsync 备份类型

增量备份 基于上一次备份做的数据备份
全量备份 备份所有数据
差异备份 基于全量备份做的数据备份

rsync

 

每天 全备份  每小时增备份
每周 全备份  每天增备份

rsync 传输模式

本地传输模式 cp
拷贝文件:  rsync /root/1 /etc
拷贝目录: rsync -a /etc/  /tmp
远程传输模式 scp
拉:rsync -avz 用户名@主机ip:路径  本地路径
推:rsync -avz 本地路径  用户名@主机ip:目标路径
守护进程模式 服务
拉:rsync 选项 -avz rsync用户@10.0.0.41::[模块] 源文件 目标
推:rsync -avz 源文件 rsync@10.0.0.41[模块] 目标
-a  归档传输
-v  传输显示
-z  压缩传输
--delete 让目标目录和源目录数据保持一致
--exclude  排除文件
--exclude-from=file 排除目录
--password-file=xxx 使用密码文件

  

安装服务端 

1.安装rsync

yum install -y rsync

2.修改配置文件

[root@backup ~]# vim /etc/rsyncd.conf 

3.配置文件详细

指定进程启动uid
uid = rsync
指定进程启动gid gid = rsync
rsync服务端口 port = 873
无需让rsync以root身份运行,运行接收文件的完整属性 fake super = yes

禁锢指定的目录 use chroot = no
最大连接数 max connections = 200
超时时间 timeout = 600
忽略错误 ignore errors
不只读(可读可写) read only = false
不允许别人查看模块名
list = false
传输文件的用户 auth users = rsync_backup
传输文件的密码文件 secrets file = /etc/rsync.passwd
日志文件 log file = /var/log/rsyncd.log ##################################### [backup] 模块名
注释 comment = welcome to oldboyedu backup!
备份目录 path = /backup

#根据配置文件内容,创建出来需要的用户和密码文件

4.创建用户,和目录

[root@backup ~]# useradd rsync -s /sbin/nologin -M 创建用户

[root@backup ~]# mkdir /backup 创建目录

[root@backup ~]# chown -R rsync.rsync /backup  修改权限为rsync

[root@backup ~]# vim /etc/rsync.passwd  创建用户名和密码存放的文件
yy_bak:123

[root@backup ~]# chmod 600 /etc/rsync.passwd  修改密码文件为600

5.启动服务

[root@backup ~]# systemctl start rsyncd    启动服务
[root@backup ~]# systemctl enable rsyncd   设置开机自启
Created symlink from /etc/systemd/system/multi-user.target.wants/rsyncd.service to /usr/lib/systemd/system/rsyncd.service.

6.客户端安装

yum isntall -y rsync


[root@web01 backup]# cat /etc/rsync.pass 客户端创建密码文件
123

[root@web01 backup]# chmod 600  /etc/rsync.pass  修改
[root@web01 backup]# ll  /etc/rsync.pass 
-rw------- 1 root root 4 May  6 20:54 /etc/rsync.pass

  

  

  

 

 

  

 

posted @ 2020-05-06 11:45  OnePieceNO1  阅读(220)  评论(0)    收藏  举报