yum install rsync -y

rsync(873):数据同步,把一台服务器上的数据以何种权限同步到另一台服务器上,是linux

系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,

或者与其他SSH;sync主机同步可以全量和增量的本地或远程数据同步;rsync守护进程(daemon)的方式传输数据,监听的是rsync 837的端口;

3.1、rsync的特性:

3.2、rsync的拷贝:

3.3、解决ssh传输慢的问题:

在远程服务器上进行/etc/ssh/sshd_config的设置:

3.4、rsync,local模式:

rsync -avz /etc/hosts /tmp/ :普通备份(源目录和目标目录进行对比,内容相同的部分不拷贝到目标目录。

内容不同的部分拷贝到目标目录,目标目录存在而源目录不存在的内容会被保留。目标目录的内容是源目录和原目标目录内容的并集(更新)。

类似于\cp -av /etc/hosts /tmp:将源目录数据拷贝到目标目录,内容名称相同覆盖,不相同的复制。目标目录和源目录内容名称不同的

保留(更新)。)

rsync -avz --delete /tmp/ /mnt/ :同步备份(源目录和目标目录进行对比,内容相同的部分不拷贝到目标目录,内容不同的部分拷

贝到目标目录。目标目录存在而源目录不存在的内容不会被保留。目标目录和源目录内容持一致(同步)。)

特别提示:

源目录和目标目录内容进行对比的方法有:通过文件或目录的名称、修改时间、大小来判断是不是同一个内容。

3.5、rsyncssh远程模式:

rsync -avz /etc -e 'ssh -p 22' root@172.16.1.31:/tmp #也可以使用--delete:用法和本地local传输相同

3.6、daemon模式:

3.6.1、rsync参数配置:

修改/etc/rsyncd.conf配置文件:

uid = rsync #同步文件的属主 使用rsync用户访问共享目录

gid = rsync #同步文件的属组

use chroot = no #安全相关的设置,一般不使用chroot

max connections = 200 #最大连接数

timout=300 #超时参数(单位/秒)

pid file = /var/run/rsyncd.pid #进程号对应的文件

lock file = /var/run/rsync.lock #锁文件,防止文件不一致

log file = /var/log/rsyncd.log #日志文件

[backup] #这里是认证的模块名,在client端需要指定

path = /backup #服务器提供的共享目录

comment = backup #描述信息

ignore errors #可以忽略一些无关的IO错误

read only = false #可写

list = false #不允许列文件 相当于ls

hosts allow=172.16.1.0/24 #允许的网段

#hosts deny=0.0.0.0/32 #拒绝的网段

auth users = rsync_backup #连接的系统中不存在的虚拟用户,对应的是uid中用户,这样同步的时候比较安全

secrets file = /etc/rsync.password #虚拟用户的用户和密码文件

3.6.2、在系统中添加虚拟用户:

useradd rsync -Ms /sbin/nologin

[root@backup /]# tail -1 /etc/passwd

rsync:x:501:501::/home/rsync:/sbin/nologin

3.6.3、创建共享目录:

mkdir -p /backup

chown -R rsync:rsync /backup/

[root@backup /]# ls -ld /backup/

drwxr-xr-x 2 rsync rsync 4096 10月 7 17:12 /backup/

3.6.4、创建密码文件:

[root@backup /]# touch /etc/rsync.password

[root@backup /]# chmod 700 /etc/rsync.password

[root@backup /]# ls -l /etc/rsync.password

-rwx------ 1 root root 0 10月 7 17:22 /etc/rsync.password

[root@backup /]# vim /etc/rsync.password

rsync_backup:123

3.6.5、启动rsync服务:

(rsync服务在root用户下运行,只是对同步文件的权限做了更改)

3.6.5.1、加入开机自启动:

echo ‘/usr/bin/rsync --daemon’>>/etc/rc.local

tail -1 /etc/rc.local

rsync --daemon

ps -ef |grep "rsync" |grep -v "rsync"

root 2363 1 0 17:05 ? 00:00:00 rsync --daemon

3.6.5.2、修改了 /etc/rsyncd.conf配置文件中的内容后要重启:

pkill rsync #杀死了rsync进程

lsof -i :873 #产看进程是否被杀死

rsync --daemon#启动rsync服务

lsof -i :873

3.6.6、客户端配置:

mkdir /etc/rsync.password

touch '123' >>/etc/rsync.password

chmod 700 /etc/rsync.password

[root@nfs01 ~]# ls -l /etc/rsync.password

-rwx------ 1 root root 4 10月 7 17:54 /etc/rsync.password

3.6.7、rsync参数补充:

--delete:无差异同步,服务端 和客户端保持一致,谨慎使用该参数

举例:视频网站,视频推送到服务器上发布,本地/backup只有当天发布的内容,服务器上有以前的所有文件,使用--delete参数进行数据同步

时会删除服务器duan以前的所有内容,只有当天发布的内容了 。

--exclude:排除文件

--exclude=a:单个排除

--exclude={a,b,c}:多个排除

--exclude={a..b}:连续排除

--bwlimit=KBPS:限速

--bwlimit=10(kB/s)

-P:断点续传

-avzP

3.6.7.1、push同步(客户端-服务端):

服务端中配置的模块名,对应的是服务端的共享地址,也可以在后面加目录,比如backup/a/,这a目录可以不存在,会自动创建;

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

rsync -avz --bwlimit=20 /backup rsync_backup@172.16.1.41::backup/ --password-file=/etc/rsync.password

3.6.7.2、pull同步(服务端-客户端)

服务端中配置的模块名,对应的是服务端的共享地址,也可以在后面加目录,比如backup/a,backup/a表示拉整个目录,backup/a/表示拉目录中的内容,a目录必须存在,且权限和上层目录一致;

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

rsync -avz --exclude={a,lc3.pdf,lc4.pdf} rsync_backup@172.16.1.41::backup/ /backup/ --password-file=/etc/rsync.password

3.7、错误解析:

3.7.1、@error:invalid uid rsync

用户不存在,需要创建用户 useradd -Ms rsync

3.7.2、@error: auth failed on module backup

rsync服务器端 /etc/rsync.password配置文件用户密码和/etc/rsyncd.conf配置文中的非系统内虚拟账号不一致,或者是客户端密码文件错误

3.7.3、@error:chdir faild

rsync服务器端共享目录权限不够

3.8、多模块设置:

vim /etc/rsyncd.conf

uid = rsync

gid = rsync

use chroot = no

max connections = 200

timout=300

pid file = /var/run/rsyncd.pid

lock file = /var/run/rsync.lock

log file = /var/log/rsyncd.log

ignore errors

read only = false

list = false

hosts allow = 172.16.1.0/24

#hosts deny = 0.0.0.0/32

auth users = rsync_backup

secrets file = /etc/rsync.password

[backup]

path = /backup

comment = backup

[backup2]

path = /backup2

comment = backup2

此种多模块配置设置的是一个独立于系统之外的虚拟用户对应不同的模块,其余的配置都放在了公共的部分,如果有需要可以从公共

的部分拿出来进行单独的配置,设置不同的独立于系统之外的虚拟账号,需要在/etc/rsync.password配置文件中添加相应的用户和密码即可。

3.9、总结:

3.9.1、rsync共有三种模式:

local模式

ssh通道模式(ssh会自动加密)

daemon模式

内网不需要加密,加密数据会有损失

rsync+vpn(pptp(简单易懂),openvpn,ipsec)

3.9.2、rsync的优缺点:

优点:

增量备份和无差异备份(对比文件,相同的文件不备份,速度快),支持socket(daemon),集中备份(支持推拉,都是以客户端为参照物);

远程ssh通道模式还可以加密(ssh)传输,socket(daemon)需要假币传输,可以利用vpn服务或是ipsec服务;

缺点:

大量小文件同步的时候,比对时间较长,有时候,rsync进程可能会停止;

同步大文件,10G这样的大文件时也会有这样的问题,会中断,未完整同步前,是隐藏文件,可以通过续传实现传输;

一次性远程拷贝可以使用scp;

3、搭建 rsync备份服务器的更多相关文章

  1. Linux搭建rsync备份服务器备份

    环境: 1台rsync备份服务器,IP:10.0.0.188 1台rsync备份客户端,IP:10.0.0.51 备份数据需注意: 1. 在业务低谷时间进行备份 2. 进行备份限速 一.搭建rsync ...

  2. Linux中架构中的备份服务器搭建(rsync)

    本期内容概要 Linux中的备份方式 架构中备份服务器搭建(rsync) 内容详细 1.备份方式 1. cp : 本机复制(只能作用在本机) 2. scp : 远程复制 两种模式: 推 : 本地上传到 ...

  3. Centos6.9 搭建rsync服务端与客户端 案例:全网备份项目

    rsync的企业工作场景说明 1)定时备份 1.1生产场景集群架构服务器备份方案项目 借助cron+rsync把所有客户服务器数据同步到备份服务器 2)实时复制 本地数据传输模式(local-only ...

  4. Linux搭建rsync服务

    一.Rsync的简单介绍 Rsync是一款开源的.快速的.多功能的.可实现全量及增量(全量备份是指全部备份,增量备份是在上一次备份的基础上只备份更新的内容)的本地货远程数据同步备份的优秀工具.Rsyn ...

  5. 搭建rsync+inotify实现实时备份

    一.环境搭建说明 系统环境 CentOS7.5 备份节点 主机名:backup01 IP地址:172.16.2.41 数据节点 主机名:nfs-master IP地址:172.16.2.31 二.在备 ...

  6. CentOS7.5搭建Rsync,实现文件同步

    Rsync(remote sync)是UNIX及类UNIX平台下一款神奇的数据镜像备份软件,它不像FTP或其他文件传输服务那样需要进行全备份,Rsync可以根据数据的变化进行差异备份,从而减少数据流量 ...

  7. Linux如何从零开始搭建rsync+serync服务器(centOS6)

    一.为什么要用Rsync+sersync架构? 1.sersync是基于Inotify开发的,类似于Inotify-tools的工具 2.sersync可以记录下被监听目录中发生变化的(包括增加.删除 ...

  8. Linux下如何使用Rsync备份服务器重要数据

    Rsync介绍: Rsync英文全称Remote synchronization,从软件的名称就可以看出来,Rsync具有可使本地和远程两台主机之间的数据快速复制同步镜像,远程备份的功能,这个功能类似 ...

  9. [Linux] 搭建rsync服务端

    rsync是unix/linux下同步文件的一个高效算法,它能同步更新两处计算机的文件与目录,并适当利用查找文件中的不同块以减少数据传输. Linux守护进程的运行方式:1.独立运行(stand-al ...

随机推荐

  1. coverage report

    转载:http://blog.sina.cn/dpool/blog/s/blog_7853c3910102yn77.html VCS仿真可以分成两步法或三步法, 对Mix language, 必须用三 ...

  2. kvm总结复习

    一.虚拟化概念 1.虚拟化技术:在计算机技术中,虚拟化(技术)或虚拟技术(英语:Virtualization)是一种资源管理技术,是将计算机的各种实体资源(CPU.内存.磁盘空间.网络适配器等),予以 ...

  3. STM32程序的启动

    普及: 不同位置启动首需要硬件上的配合:BOOT1与BOOT0 引脚电平配合,一般默认使用主闪存存储: 也就是BOOT0 = 0; 启动时将现在起始模式的初始地址映射到了0x0000 0000,内部S ...

  4. kylin剪枝优化的两种方式

    1.衍生维度. 在kylin中,如果某些维度都属于同一种类型,且数量较多,可以考虑做成衍生维度. 衍生维度就是将一批维度做成一张维度表,只在源表中保留这张表的外键,这样预处理的时候,就只会处理这个外键 ...

  5. 西门子S7系列以太网通讯处理器安装调式操作

    北京华科远创科技有限研发的远创智控ETH-YC模块,PLC转以太网型号有MPI-ETH-YC01和MPI-ETH-YC01,适用于西门子S7-200/S7-300/S7-400.SMART S7-20 ...

  6. Nextcloud 使用教程

    一.简介 Nextcloud是一个网盘式文件管理系统,多用户权限管理,多客户端,使用简单.可在浏览器中运行,也可下客户端,不论使用哪种方式运行,使用教程都是一样的. 只是在客户端中运行时能及时收到相应 ...

  7. Step By Step(Lua模块与包)

    Step By Step(Lua模块与包) 从Lua 5.1开始,我们可以使用require和module函数来获取和创建Lua中的模块.从使用者的角度来看,一个模块就是一个程序库,可以通过requi ...

  8. CVPR2020最新论文扫描盘点(下)

    CVPR2020最新论文扫描盘点(下) 最近计算机视觉三大顶会之一CVPR2020接收结果已经公布,一共有1470篇论文被接收,接收率为22%,相比去年降低3个百分点,竞争越来越激烈.这里整理来自Tw ...

  9. ARM NEON指令集优化理论与实践

    ARM NEON指令集优化理论与实践 一.简介 NEON就是一种基于SIMD思想的ARM技术,相比于ARMv6或之前的架构,NEON结合了64-bit和128-bit的SIMD指令集,提供128-bi ...

  10. YOLOV4知识点分析(二)

    YOLOV4知识点分析(二) 6. 数据增强相关-mixup 论文名称:mixup: BEYOND EMPIRICAL RISK MINIMIZATION 论文地址:https://arxiv.org ...