目录

Remote Sync

功能

1. 可以镜像保存整个目录树和文件系统

2. 很容易做到保持原来文件的权限,时间,属主,软硬连接等

3. 可使用rcp,ssh等方式来传输文件,也可直接通过socket来进行连接

4. 支持匿名传输

General use for remote backup and backup localhost file into remote host(auto-periodical execute)

Distinction of backup and copy:

1. backup:Update the data.

2. copy:Move all data to other space.

RSync可以实现增量备份,而且可以同步更新数据,实时备份。RSync主机同步网络YUM源,本地局域网同步RSync主机YUM源。

同步的类型

本地模式

将a目录内的文件通过rsync到另一个b目录

example:

  1. rsync -av test /tmp

Attention:

a. /tmp/:不将tmp目录备份,只备份tmp目录下的内容

b. /tmp:将tmp目录及其以下的内容完全备份

远程模式

底层是使用SSH协议

example:

  1. rsync -av /tmp root@GoalHostIP:/root

RSync列表模式

example:

  1. rsync -a IP:cisco

RSync 服务模式:

Rsync同步源、SSH源 –> 备份文件的源主机

Setup RSync service

step1. Create RSync service configuration file by manual

vim /etc/rsyncd.conf

  1. #RSync configuration file
  2. #Welcome file
  3. motd file = /etc/rsyncd.motd
  4. read>list = yes
  5. uid=root
  6. gid=root
  7. use chroot = no
  8. max connections = 5
  9. log file = /var/log/rsyncd.log
  10. pid file = /var/run/rsyncd.pid
  11. lock file = /var/run/rsyncd/lock
  12. #Specify share directory
  13. [wwwroot]
  14. path = /var/www/html
  15. readonly = yes
  16. auth users = jmilk
  17. #user authentication file, store userName and password
  18. secrets file = /etc/rsyncd.db
  19. comment = rsync directory

step2. Create password file

  1. echo "jmilk:fanguiju" >> /etc/rsyncd.db
  2. chmod 600 /etc/rsyncd.db

step3. Start rsync service

  1. rsync --deamon

How to use the rsync commands

rsync指令选项

  1. -av 同步并且显示详细信息
  2. -z 在传输备份是进行压缩
  3. --delete 将目的位置中有而源位置中没有的文件删除
  4. --password-file=/etc/server 指定存放密钥对的位置
  5. -H 保留硬链接

example:

  1. #use rsync source:
  2. rsync -avzH --delete backuper@:ip::wwwroot /var/www/html --> ::shareDirectory
  3. #use ssh source in the client:
  4. rsync -avzH root@RSyncServerIP:/syncDirectory /localhostBackupDirecttory

SSH Source create Key Pair:

  1. ssh-keygen -t rsa
  2. ssh-copy-id root@RSyncServerIP

RSync Source create Key Pair:

vim /etc/rsyncd.conf

  1. RSYNC_PASSWORD="pwd123"

RSync backup:

  1. rsync -avzH -b --backup-dir=old root@SyncServerIP:/syncDirectory /localhostBackupDirectory
  2. #old --> 只是备份有修改过的文件到该目录中,并且创建在本地指定的/localostBackupDirectory目录中
  3. #-b --> backup mode
  4. rsync -avzH -b --backup-dir='date+ "%Y%M%B%H%M%S"' root@SyncServerIP:/syncDirectory /localhostBackupDirectory #在每次更新后都生成一个只包含修改部分的备份文件
  5. rsync -avzH -b --backup-dir='date+ "%Y%M%B%H%M%S"' --exclude=up root@SyncServerIP:/syncDirectory /localhostBackupDirectory #将备份目录中包含up的文件或子目录排除不备份

inotify+rsync Real-time sync

inotify机制:监控文件系统的变化

Software:inotofy-tools(安装在RSyncServer)

inotify kernel parameter:

  1. max_queue_events:监控队列大小
  2. max_user_instances:最多监控例数
  3. max_user_watches:每个实例最多的监控个数

Setup inotify

  1. tar zxvf inotify-tools -C /usr/local
  2. cd /usr/local/inotify-tools
  3. ./confugure && make && make install
  4. inotifywait -mrq -e modify,create,move,delete /data/ --exclude=/data/up/
  5. #wait 持续监控
  6. #-e 指定监控事件的类型
  7. #--exclude 过滤不想监控的目录或内容

BUG:编译安装的过程中可能会出现执行以上指令后出现: libinotifytools.so.o:cannot open shared object file error

解决办法:ln -S /usr/local/lib/libinotifytools.so.o /usr/lib64

Linux_Rsync远程同步备份服务器的更多相关文章

  1. Rsync(远程同步): linux中Rsync命令的实际示例

    rsync的 ( 远程同步 )为在Linux / Unix系统局部 拷贝和同步文件和目录远程以及一个最常用的命令. 随着rsync命令的帮助,您可以复制并在目录中远程和本地同步数据,在磁盘和网络,进行 ...

  2. rsync 远程同步 实时同步备份 两种免交互的方式实现实时备份

    rsync 远程同步: 一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步 作用:做数据备份 备份方式:      完全备份      增量备份 ...

  3. rsync远程同步

    一.概念 Rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持连接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用.rsy ...

  4. rsync远程同步的基本配置与使用

    rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用. rsync的官 ...

  5. 2019/01/17 基于windows使用fabric将gitlab的文件远程同步到服务器(git)

    觉得django项目把本地更新push到gitlab,再执行fabric脚本从gitlab更新服务器项目挺方便的,当然从本地直接到服务器就比较灵活. 2019/01/17 基于windows使用fab ...

  6. linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录

    最近需要写一个脚本备份各个服务器上的程序到一个指定服务器上,本来以为查查rsync命令的使用321就能搞定,结果rsync命令要支持自动登 录还是要配置服务和参数,又不确定网上说的配置的行不行,因为都 ...

  7. Linux 远程同步:rsync

    rsync 简介: (1) rsync 是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件(2) rsync 使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步 ...

  8. Jrebel 独立部署tomcat 远程同步项目

    一直在用 jrebel 感觉热部署的 功能,修改xml配置文件等,省去了很多的重新启动的时间. 由于偶然间发现 jrebel 还有remote 路由功能.这样,在服务器端用jrebel部署的项目和本地 ...

  9. linux 远程同步数据工具rsync (1)

    rsync 远程同步数据工具,是linux下的数据备份工具rsync(remote sync 远程同步) 特点:在本地同步数据(类似于cp,但是有不同于远程scp),它会先判断已经存在的数据和远程数据 ...

随机推荐

  1. 多层 iframe 嵌套 js 方法调用

    一下午一个这破问题,浪费了不少时间,怎么也实现不了我的上上级iframe 刷新.NND. 实现了,记录一下下吧: window.parent.parent.document.getElementByI ...

  2. C语言_扫雷代码

    本文详细讲述了基于C语言实现的扫雷游戏代码,代码中备有比较详细的注释,便于读者阅读和理解.希望对学习游戏开发的朋友能有一点借鉴价值. 完整的实例代码如下: ? 1 2 3 4 5 6 7 8 9 10 ...

  3. TensorRt安装

    1.下载 https://developer.nvidia.com/nvidia-tensorrt-5x-download 选择5 GA版本,注意选择与自己CUDA匹配的版本 2.安装 参考:http ...

  4. python基础练习题7

    1.创建Person类,属性有姓名.年龄.性别,创建方法personInfo,打印这个人的信息2.创建Student类,继承Person类,属性有学院college,班级class,重写父类perso ...

  5. luoguP3723 HNOI2017 礼物

    链接 首先,两个手环增加非负整数亮度,等于其中一个增加一个整数亮度,可以为负. 令增加量为\(x\),旋转以后的原数列为,那么在不考虑转圈圈的情况下,现在的费用就是: \[\sum_{i=1}^n\l ...

  6. java课堂作业,求多参数的和

    设计思想 第一步:用户输入他想要计算的数字个数 第二步:声明字符串数组,保存用户的输入,同时每次输入后强制转换类型并求和 第三步:将声明的数组赋值给args 第四步:输出结果 程序流程图 程序源代码 ...

  7. Ubuntu启动器创建

    Ubuntu 启动器创建 启动器的本质是一个后缀为.desktop的文件,文件内容如下(这里为我创建的Chrome启动器) [Desktop Entry] Encoding=UTF- Name=Chr ...

  8. thinkphp类型转换

    类型转换 说白了就是在model类中声明的字段输出类型:其语法如下: 注意strtotime()函数可以将诸如‘2018-12-21’这样的日期字符串转为整数存入数据库 自动完成---等于提前对某一表 ...

  9. 【LuoguP4433】[COCI2009-2010#1] ALADIN(含类欧几里得算法推导)

    题目链接 题意简述 区间赋值模意义下等差数列,询问区间和 \(N\leq 10^9,Q\leq 10^5\) Sol 每次操作就是把操作区间\([L,R]\)中的数赋值成: \[(X-L+1)*A\ ...

  10. spark数据倾斜与解决方法

    一.数据倾斜 数据倾斜一般发生在对数据进行重新划分以及聚合的处理过程中.执行Spark作业时,数据倾斜一般发生在shuffle过程中,因为Spark的shuffle过程需要进行数据的重新划分处理.在执 ...