Rsync数据同步服务

Rsync软件适用与unix/linux/windows等多种操作系统平台

Rsync是一款开源的,快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具,可以实现删除文件或目录的功能 
它的功能可以排除以后在复制,可以保持原文件目录的权限,时间,软硬链接,属主,属组等属性均不改变也就是cp -p的功能

增量同步就是只同步变化的数据,可以通过ssh远程数据传输,也可以通过socker进程数据传输,支持匿名或加密数据传输

Rsync三大类:1,本地间类似cp命令的数据同步 2.网络间两台不同IP服务期间数据传输 3.以socker进程监听的方式启动rsync server端

rsync -avzP -e 'ssh -p 22' 如下 --delet:删除参数,只能删除目录里的文件 --bwlimit=100:限速参数,等于多少就是限速多少

a代表递归复制,v代表显示传输信息,z代表高效的传输效率,-e代表指定端口传输,不写代表默认22端口,-P保持文件所有属性不变

rsync -avz 源目录 root@目标IP:放到什么目录下 --> 不同IP服务间数据传输,需要安装远程支持包(openssh-clients也就是scp命令和rsync命令)

 

Rsync缺点

要有众多小文件的话只能一个一个比对在推送,所以一般都是把整个目录打包以后在推送

 

远程复制命令

ssh IP地址:远程登陆系统用户,不写root@代表默认,普通用户必须写用户

scp -P:远程复制命令,不写-P默认端口22,不写代表指定多少端口 rsync:远程同步复制命令

/etc/ssh/sshd_config:sshd远程端口配置文件,端口号在13行 rsync监听873端口

 

Rsync服务搭建

Rsync服务端先检查有没有rsync软件包,手动创建vim /etc/rsyncd.conf文件默认不存在,vim编写

 

用户

uid = rsync

 

gid = rsync

 

程序安全设置

use chroot = no

 

客户端连接数

max connections = 200

 

超时时间

timeout = 300

 

进程号文件位置

pid file = /var/run/rsyncd.pid

 

进程锁

lock file = /var/run/rsync.lock

 

日志文件位置

log file = /var/log/rsyncd.log

 
#

[backup]

 

使用目录

path = /backup/

 

有错误时忽略

ignore errors

 

可读可写(true或false)

read only = false

 

阻止远程列表(不让通过远程方式看服务端有啥)

list=false

 

允许IP

hosts allow = 192.168.200.0/24

 

禁止IP

hosts deny = 0.0.0.0/32

 

虚拟用户

auth users = rsync_backup

 

存放用户和密码的文件

secrets file = /etc/rsync.password


 

Rsync搭建过程

useradd -M -s /sbin/nologin rsync #创建rsync用户

mkdir /backup #创建共享目录

rsync --daemon #启动服务

chown rsync /backup #/backup文件夹更改属主rsync

echo "rsync_backup:123456" >/etc/rsync.password #创建rsync虚拟账户名和密码

chmod 600 /etc/rsync.password #将账户密码文件的权限设置为600(必须否则失败)

echo "rsync --daemon" >> /etc/rc.local #加入开机启动(可加可不加)

pkill rsync #关闭rsync服务

rsync --daemon #启动rsync服务

 

Rsync客户端先检查有没有rsync软件包

echo "123456" > /etc/rsync.password #手动创建密码文件

chmod 600 /etc/rsync.password #将密码文件的权限设置为600(必须否则失败)

 

Rsync同步测试

rsync -avz /backup/ rsync_backup@192.168.200.xxx::backup --password-file=/etc/rsync.password

命令说明: 
-avz:保持稳健各项属性不变 
-a归档模式,表示以递归方式传递文件 
-z传输时进行压缩以提高传输效率 
-v显示进度信息 
--delet实时同步 
-P完全同步 
,保持所有属性不变 
/backup/:要推送的内容所在目录 
rsync_backup:服务器端rsync服务的同步的用户名(非Linux用户) 
192.168.200.xxx:rsync服务器IP地址 
backup:rsync服务器配置文件里的模块名 
--password-file=/etc/rsync.password:免密码的操作,指定密码文件位置,如果不写,则会要求用户交互式输入密码。(如果想挂定时任务,必须得非交互式)

 

Rsync指定端口推送

rsync -avzP -e 'ssh -p 22'/etc/ root@192.168.197.129:/tmp/ #将当前主机内容推送到远程主机(需要安装远程支持包)

rsync -avzP -e 'ssh -p 22' root@chensiqi2:/opt /tmp #将远程主机内容拉取到当前主机(需要安装远程支持包)

Rsync数据同步服务的更多相关文章

  1. Linux之rsync数据同步服务

    rsync是一个开源.快速的.多动能的.可以实现全量,增量的本地或远程数据同步备份工具,它适用于多种操作系统平台. 1.rsync的特性(功能) (1)支持拷贝特殊文件(如链接文件.设备文件) (2) ...

  2. Linux实战教学笔记21:Rsync数据同步工具

    第二十一节 Rsync数据同步工具 标签(空格分隔): Linux实战教学笔记-陈思齐 ---本教学笔记是本人学习和工作生涯中的摘记整理而成,此为初稿(尚有诸多不完善之处),为原创作品,允许转载,转载 ...

  3. Rsync数据同步工具

                                        Rsync数据同步工具 什么是Rsync? Rsync是一款开源的.快速的.多功能的,可以实现全量及增量的本地或原程数据同步备份 ...

  4. rsync数据同步工具的配置

    rsync数据同步工具的配置 1. rsync介绍 1.1.什么是rsync rsync是一款开源的快速的,多功能的,可实现全量及增量的本地或远程数据同步备份的优秀工具.Rsync软件适用于 unix ...

  5. 【基础】:Rsync数据同步工具

    第二十一节 Rsync数据同步工具 1.1 Rsync介绍 1.1.1 什么是Rsync? 1.1.2 Rsync简介 1.3 Rsync的特性 1.1.4 Rsync的企业工作场景说明 1.2 Rs ...

  6. rsync数据同步备份

    一.rsync简介 (1)rsync是什么? rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地或远程数据同步备份的优秀工具. (2)rsync作用比较 远程拷贝:有点类似ssh的scp ...

  7. rsync实时同步服务部署

    部署rsync服务 一.需求:把客户端文件同步到服务端指定位置服务端:备份服务器为 172.16.3.164客户端:推送服务器为 172.16.3.94 二.基础知识: rsync 分为服务器端.客户 ...

  8. 搭建中小规模集群之rsync数据同步备份

    NFS重要问题 1.有关NFS客户端普通用户写NFS的问题. 1)为什么要普通用户写NFS. 2)exports加all_squash. Rsync介绍 什么是Rsync? Rsync是一款开源的.快 ...

  9. rsync 数据同步

    什么是Rsync? Rsync是一款开源的.快速的.多功能的.可实现全量及增量的本地货远程数据同步备份的优秀工具.适用于unix/linux/windows等多种操作系统平台. Rsync具有可使本地 ...

随机推荐

  1. centos 增强功能安装失败

    centos 共享目录设置失败 /sbin/mount.vboxsf: mounting failed with the error: No such device 准备安装增强功能 [root@lo ...

  2. phpstudy-5.6.27-nts 安装redis扩展

    redis扩展安装流程 第一步: 首先直接查看一下phpinfo()的信息 找到下面两条信息 Architecture x86 PHP Extension Build API20131226,NTS, ...

  3. future then

    import 'dart:async'; main(){ Future(()=>a1()) .then((x)=>a2(x)) .then((x)=>a3(x)) .then((x) ...

  4. cssselector元素定位

    转自https://blog.csdn.net/qq_40024178/article/details/78945651 一.概述 cssSelector也是一种常用的选择器,CSS locator比 ...

  5. 三.SQL语句

    一.mysqladmin客户端命令 1.查看MySQL存活状态 [root@db01 ~]# mysqladmin -uroot -p123 ping 2.查看MySQL状态信息 [root@db01 ...

  6. Slimming Plan

    问题 B: Slimming Plan 时间限制: 1 Sec  内存限制: 128 MB 题目描述 Chokudai loves eating so much. However, his docto ...

  7. CentOS中使用tcpdump抓包

    安装: yum install tcpdump 命令使用: 监听特定网卡 tcpdump 抓取第一块网卡所有数据包 [root@server110 tcpdump]# tcpdump tcpdump: ...

  8. list,tuple,dict,set的增删改查

    数据结构 list tuple dict set 增 append insert    d['key']=value  add 删 pop pop(0)    d.pop('name') pop re ...

  9. Java 学习笔记- classpath classpath*

    转自:https://blog.csdn.net/javaloveiphone/article/details/51994268 1.src不是classpath, WEB-INF/classes,l ...

  10. C# Finalize和Dispose的区别

    一:总结 1.Finalize方法(C#中是析构函数,以下称析构函数)是用于释放非托管资源的,而托管资源会由GC自动回收.所以,我们也可以这样来区分 托管和非托管资源.所有会由GC自动回收的资源,就是 ...