准备:

主服务器 192.168.0.1

备份服务器 192.168.0.2

备份服务器 注意需要开放873端口 而且小心selinux

开始:

sudo vim /etc/rsyncd.passwd

rsync_user:123456  注意格式,每行一个用户名:密码

sudo chmod 600 /etc/rsyncd.passwd

sudo vim /etc/rsyncd.conf

# /etc/rsyncd: configuration file for rsync daemon mode

uid = root
gid = root
use chroot = no
munge symlinks = no
max connections =
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log ignore errors
read only = no
write only = no
hosts allow = 192.168.0.1
hosts deny = *
list = false
auth users = rsync_user
secrets file = /etc/rsyncd.passwd [web]
path = /var/www/
comment = web [cron]
path = /var/spool/cron/
comment = cron

注意 [web] [cron] 是不同的目录,如果有其他的可以继续添加,如果对某个目录下有特殊要求可以在它下面重复配置上面的内容

加入自启动

sudo vim /etc/rc.local

/usr/bin/rsync --daemon

并且手动执行下

sudo /usr/bin/rsync --daemon

主服务器

sudo yum install inotify-tools

sudo vim /etc/rsync.passwd

123456  注意和备份服务器格式不同,这里仅仅需要密码即可,我在这浪费了几个小时折腾

sudo chmod 600 /etc/rsync.passwd

sudo vim /usr/bin/rsync.sh

#!/bin/bash

host=192.168.0.2
user=rsync_user src=/var/www/
des=web
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib $src | while read files
do
/usr/bin/rsync -avz --delete --password-file=/etc/rsync.passwd $src $user@$host::$des >> /var/log/rsync.log >&
done src=/var/spool/cron/
des=cron
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f%e' -e modify,delete,create,attrib $src | while read files
do
/usr/bin/rsync -avz --delete --password-file=/etc/rsync.passwd $src $user@$host::$des >> /var/log/rsync.log >&
done

sudo chmod +x /usr/bin/rsync.sh

添加自启动

sudo vim /etc/rc.local

/usr/bin/rsync.sh &

并且手动启动下

sudo /usr/bin/rsync.sh &

结束

如果出现
Failed to watch /var/www/; upper limit on inotify watches reached!
Please increase the amount of inotify watches allowed per user via `/proc/sys/fs/inotify/max_user_watches'.

sudo sysctl -w fs.inotify.max_user_watches="99999999"
sudo vim /etc/sysctl.conf
添加
fs.inotify.max_user_watches=99999999

两台linux 服务器同步的更多相关文章

  1. 两台linux服务器之间实现挂载

    https://blog.csdn.net/lpp_dd/article/details/78743862 两台linux服务器之间实现挂载: 服务端: 1.首先需要在主机上设置允许挂载的目录 (1) ...

  2. 两台linux服务器之间免密scp,在A机器上向B远程拷贝文件

    两台linux服务器之间免密scp,在A机器上向B远程拷贝文件 操作步骤:1.在A机器上,执行ssh-keygen -t rsa,一路按Enter,不需要输入任何内容.(如有提示是否覆盖,可输入y后按 ...

  3. EMC存储同时分配空间到两台LINUX服务器路径不一致导致双机盘符大小不一致

    操作系统:Centos linux6.6 当我们从EMC存储上划分空间同时分配给两台或者多台服务器上时,有的时候会出现在服务器上所生成的磁盘路径是不一致的,这样就会导致盘符名称不一致或者是盘符对应的大 ...

  4. 两台Linux服务器文件同步

    在给公司或者学校做系统部署的时候,为了数据安全往往我们至少需要两台服务器,接下来请看: 我们要实现的是把客户端(192.168.0.1)的复制到目标服务器(192.168.0.2) 一.目标服务器 1 ...

  5. 在联网时,两台linux服务器传输文件方法

    登陆服务器root用户命令:su - root 传输文件命令:scp +需要传输linux系统文件+空格+目标linux服务器的用户名@服务器ip地址:+传输的文件路径:例:scp /mnt/work ...

  6. 两台linux服务器相互拷贝文件的两个方法

    scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的.可能会稍微影响一下速度.当你服务器 ...

  7. 同步两台linux服务器时间同步方案

    Linux自带了ntp服务 -- /etc/init.d/ntpd,这个服务不仅可以设置让本机和某台/某些机器做时间同步,他本身还可以扮演一个time server的角色,让其他机器和他同步时间. 配 ...

  8. 两台Linux服务器之间复制文件

    一.scp 1.简介 scp是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且scp传输是加密的 2.软件安装 ...

  9. linux操作系统-两台linux服务器SSH免密码登录

    A为本地主机(即用于控制其他主机的机器) ; B为远程主机(即被控制的机器Server), ip为192.168.100.247 ; A和B的系统都是Linux   在A上的命令 # ssh-keyg ...

随机推荐

  1. ERROR 1872

    解决 > start slave; ERROR (HY000): Slave failed to initialize relay log info structure from the rep ...

  2. yii2.0 数据库查询操作

    User::find()->all();    此方法返回所有数据:    User::findOne($id);   此方法返回 主键 id=1  的一条数据(举个例子):    User:: ...

  3. MySQL基础知识 数据库 数据表

    1.数据库结构 库 表 数据 2. sql(structured query language)结构化查询语言 管理数据库 管理表 管理数据 3.数据库 增删改查 增 create database  ...

  4. dos中文乱码怎么办?

    最简单的方法: 通过 chcp命令改变代码页,UTF-8的代码页为65001 即chcp 65001 chcp 65001  就是换成UTF-8代码页 chcp 936 可以换回默认的GBK chcp ...

  5. LUOGU P1039 侦探推理 (字符串+模拟)

    传送门 解题思路 一道%你神题,\(string\)好强大啊..首先枚举一个周几,再枚举一个罪犯是谁,然后判断的时候就是枚举所有人说的话.定义\(fAKe[i]\)表示第\(i\)个人说的是真话还是假 ...

  6. github 拷贝项目到本地

    第一步,git config --global --list 验证邮箱 第二步,git config --global user.name "yourname",git confi ...

  7. jquery学习笔记(三):事件和应用

    内容来自[汇智网]jquery学习课程 3.1 页面加载事件 在jQuery中页面加载事件是ready().ready()事件类似于就JavaScript中的onLoad()事件,但前者只要页面的DO ...

  8. STM32F103 Feature

  9. jquery对于ajax的封装

    第一层封装 $.ajax({ 属性名:值,属性名:值}) /* url: 请求服务器地址 data:请求参数 dataType:服务器返回数据类型 error 请求出错执行的功能 success 请求 ...

  10. POJ - 2778 ~ HDU - 2243 AC自动机+矩阵快速幂

    这两题属于AC自动机的第二种套路通过矩阵快速幂求方案数. 题意:给m个病毒字符串,问长度为n的DNA片段有多少种没有包含病毒串的. 根据AC自动机的tire图,我们可以获得一个可达矩阵. 关于这题的t ...