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),它会先判断已经存在的数据和远程数据 ...
随机推荐
- 关于一个function abc() 内 return一个值, 或者多个值写法
1.想return一个值,选第一种写法 function abc(){ a = '我是adad' return a } console.log(abc) // ==> 这个是错的,不要这样写,经 ...
- HTTPS加密原理与过程
HTTPS加密原理与过程 HTTP 超文本传输协议一种属于应用层的协议 缺点: 通信使用明文(不加密),内容可能会被窃听 不验证通信方的身份,因此有可能遭遇伪装 无法证明报文的完整性,所以有可能已遭篡 ...
- Core Graphics Paths
Paths中的几个重要元素 Points void CGContextMoveToPoint ( CGContextRef c, CGFloat x, CGFloat y ); 指定 ...
- Laravel 向公共模板赋值
开发过程中许多时候都会向公共模板赋值,比如顶部导航栏,页面底部等等,不可能在每个控制器中都赋值一遍. Laravel 中解决办法如下:修改 App\Providers\AppServiceProvid ...
- SQL的基本操作(三)
Hive基本SQL操作 Hive DDL(数据库定义语言) 1.数据库的基本操作 --展示所有数据库 show databases; --切换数据库 use database_name; /*创建数据 ...
- Maven搭建简单的SPring+SpringMVC+Hibernate框架
公司的项目用到的框架是Spring+SpringMVC+Hibernate 以前没有用过,所以要系统的学习一下,首先要学会怎么搭建 第一步 创建一个Maven的web项目 创建方法以前的博客中有提 ...
- css不同情况下的各种居中方法
div水平居中 1.行内元素 .parent{ text-align: center } 2.块级元素 .son{ margin: 0 auto ; } 3.flex布局 .parent{ displ ...
- TJOI2017DNA
P3763 [TJOI2017]DNA 字符串匹配,字符集大小为\(4\),认为相差不超过\(3\)即合法. 对每一种字符分开考虑不同产生的贡献. 对于串\(S\),如果当前位置相同则\(S_i=1\ ...
- python设置图片背景和设置字体颜色大小
# -*- coding: utf-8 -*- """ Created on Wed Dec 11 22:37:30 2019 @author: Dell "& ...
- Python 3标准库课件第一章
第一章文本1.1 string:文本常量和模板1.2 textwrap:格式化文本段落1.3 re:正则表达式1.4 difflib:比较序列str类,string.Templatetextwrap ...