Linux_Rsync远程同步备份服务器
目录
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:
rsync -av test /tmp
Attention:
a. /tmp/:不将tmp目录备份,只备份tmp目录下的内容
b. /tmp:将tmp目录及其以下的内容完全备份
远程模式
底层是使用SSH协议
example:
rsync -av /tmp root@GoalHostIP:/root
RSync列表模式
example:
rsync -a IP:cisco
RSync 服务模式:
Rsync同步源、SSH源 –> 备份文件的源主机
Setup RSync service
step1. Create RSync service configuration file by manual
vim /etc/rsyncd.conf
#RSync configuration file
#Welcome file
motd file = /etc/rsyncd.motd
read>list = yes
uid=root
gid=root
use chroot = no
max connections = 5
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd/lock
#Specify share directory
[wwwroot]
path = /var/www/html
readonly = yes
auth users = jmilk
#user authentication file, store userName and password
secrets file = /etc/rsyncd.db
comment = rsync directory
step2. Create password file
echo "jmilk:fanguiju" >> /etc/rsyncd.db
chmod 600 /etc/rsyncd.db
step3. Start rsync service
rsync --deamon
How to use the rsync commands
rsync指令选项:
-av 同步并且显示详细信息
-z 在传输备份是进行压缩
--delete 将目的位置中有而源位置中没有的文件删除
--password-file=/etc/server 指定存放密钥对的位置
-H 保留硬链接
example:
#use rsync source:
rsync -avzH --delete backuper@:ip::wwwroot /var/www/html --> ::shareDirectory
#use ssh source in the client:
rsync -avzH root@RSyncServerIP:/syncDirectory /localhostBackupDirecttory
SSH Source create Key Pair:
ssh-keygen -t rsa
ssh-copy-id root@RSyncServerIP
RSync Source create Key Pair:
vim /etc/rsyncd.conf
RSYNC_PASSWORD="pwd123"
RSync backup:
rsync -avzH -b --backup-dir=old root@SyncServerIP:/syncDirectory /localhostBackupDirectory
#old --> 只是备份有修改过的文件到该目录中,并且创建在本地指定的/localostBackupDirectory目录中
#-b --> backup mode
rsync -avzH -b --backup-dir='date+ "%Y%M%B%H%M%S"' root@SyncServerIP:/syncDirectory /localhostBackupDirectory #在每次更新后都生成一个只包含修改部分的备份文件
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:
max_queue_events:监控队列大小
max_user_instances:最多监控例数
max_user_watches:每个实例最多的监控个数
Setup inotify
tar zxvf inotify-tools -C /usr/local
cd /usr/local/inotify-tools
./confugure && make && make install
inotifywait -mrq -e modify,create,move,delete /data/ --exclude=/data/up/
#wait 持续监控
#-e 指定监控事件的类型
#--exclude 过滤不想监控的目录或内容
BUG:编译安装的过程中可能会出现执行以上指令后出现: libinotifytools.so.o:cannot open shared object file error
解决办法:ln -S /usr/local/lib/libinotifytools.so.o /usr/lib64
Linux_Rsync远程同步备份服务器的更多相关文章
- Rsync(远程同步): linux中Rsync命令的实际示例
rsync的 ( 远程同步 )为在Linux / Unix系统局部 拷贝和同步文件和目录远程以及一个最常用的命令. 随着rsync命令的帮助,您可以复制并在目录中远程和本地同步数据,在磁盘和网络,进行 ...
- rsync 远程同步 实时同步备份 两种免交互的方式实现实时备份
rsync 远程同步: 一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步 作用:做数据备份 备份方式: 完全备份 增量备份 ...
- rsync远程同步
一.概念 Rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持连接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用.rsy ...
- rsync远程同步的基本配置与使用
rsync是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份,镜像服务器等应用. rsync的官 ...
- 2019/01/17 基于windows使用fabric将gitlab的文件远程同步到服务器(git)
觉得django项目把本地更新push到gitlab,再执行fabric脚本从gitlab更新服务器项目挺方便的,当然从本地直接到服务器就比较灵活. 2019/01/17 基于windows使用fab ...
- linux下ssh远程登录/scp远程复制文件/rsync远程同步命令的自动登录
最近需要写一个脚本备份各个服务器上的程序到一个指定服务器上,本来以为查查rsync命令的使用321就能搞定,结果rsync命令要支持自动登 录还是要配置服务和参数,又不确定网上说的配置的行不行,因为都 ...
- Linux 远程同步:rsync
rsync 简介: (1) rsync 是一个远程数据同步工具,可通过 LAN/WAN 快速同步多台主机间的文件(2) rsync 使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步 ...
- Jrebel 独立部署tomcat 远程同步项目
一直在用 jrebel 感觉热部署的 功能,修改xml配置文件等,省去了很多的重新启动的时间. 由于偶然间发现 jrebel 还有remote 路由功能.这样,在服务器端用jrebel部署的项目和本地 ...
- linux 远程同步数据工具rsync (1)
rsync 远程同步数据工具,是linux下的数据备份工具rsync(remote sync 远程同步) 特点:在本地同步数据(类似于cp,但是有不同于远程scp),它会先判断已经存在的数据和远程数据 ...
随机推荐
- Linux上安装JDK1.8,tomcat9,以及mysql8的步骤
(该篇是在centos7上安装JDK1.8.0_201 tomcat9.0.16 和 mysql8.0.15) 一.安装JDK 方式一 1.首先,下载JDK(链接http://www.oracle. ...
- 基于AliOS的车载小程序
4月16日上海国际车展首日,阿里巴巴表示正在研发基于AliOS的车载小程序.同时还展出AI HUD.AI驾驶舱等最新技术,AliOS表示正在构建一个可持续发展的整合平台. 阿里方面表示,作为小程序在车 ...
- GNU ARM汇编快速入门
以前用ARM的IDE工具,使用的是ARM标准的汇编语言.现在要使用GNU的工具,当然要了解一点GNU ARM汇编的不同之处.其实非常的简单,浏览一下文档然后再看看程序就完全可以搞定了,或者你硬着头皮看 ...
- Python修炼之路-函数
Python编程之函数 程序的三种方式 面向对象:类------->class 面向过程:过程------>def 函数式编程:函数------>def 定义函数 函数:逻辑结构化与 ...
- Maven工程构建
Maven 相关术语: 本地资源库:用来存储项目的依赖库,默认的文件夹是 “.m2” 目录 中央存储库: 用来下载所有项目的依赖库的默认位置 Maven pom.xml: 项目对象模型(Project ...
- 【转】encodeURI和decodeURI方法
为什么要两次调用encodeURI来解决乱码问题 https://blog.csdn.net/howlaa/article/details/12834595 请注意 encodeURIComponen ...
- python 后台 安装 富文本编辑
前言 当然需要安装一些后台只能输入一些文本编辑器,不然这样多少不美观呀 当然python 有 safe 可以把后台的标签转换 , 还有 striptags 这个是换成html 格式的,但不会加粗或 ...
- gitlab搭建之互备模式
gitlab搭建之互备模式 gitlab搭建之互备模式 前言:gitlab目前默认的部署方式是本地单机部署,为了提高gitlab环境的可靠性和稳定性,必须构建一套互备搭建方案:借助gitolilt ...
- mysql数据库密码
一. oOO6jpspg/j5 二. alter user root@localhost IDENTIFIED BY '123'; 三. create database s11Madking char ...
- vs2017 制作winfrom 安装包!
https://www.cnblogs.com/GuZhenYin/p/8176981.html 转载 前言 项目中有用到winfrom做配套的打印程序,直接给客户一个debug文件夹,当然不是很好. ...