LINUX系统使用软件异地同步数据(灾备)rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步 一、宝塔环境: 有宝塔软件商城支持,参考:https://www.bt.cn/bbs/thread-98022-1-1.html 二、其他环境: 实现工具:lsyncd lsyncd结合了inotify + rsync,Lsyncd监视本地目录树事件监视器接口(inotify或fsevents)。它聚合和组合事件几秒钟, 然后生成一个(或多个)进程(es)来同步更改。 1、安装(lsyncd基于rsync,且要求rsync >= 3.1): # 查看rsync版本 # rsync -v
1.1、rsync< 3.1才执行以下内容,rsync >= 3.1跳过1.1此步,直接执行1.2 #查看当前rsync版本 rsync -v #如果版本太低,直接卸载 yum -y remove rsync #下载rsync源码 wget http://soft.xiaoz.org/linux/rsync-3.1.3.tar.gz #解压 tar -zxvf rsync-3.1.3.tar.gz #进入目录 cd rsync-3.1.3 #编译安装 ./configure make install 最后再次输入rsync -v查看版本是否升级成功 1.2 更新epel源 yum -y install epel-release 1.3安装lsyncd #安装lsyncd yum -y install lsyncd #查看lsyncd版本 lsyncd --version #配置文件位于/etc/lsyncd.conf -- 是注释符 2、 配置2.1 配置免密登陆 如果想要将主A:192.168.0.1的数据同步到备B:192.168.0.2,主A:192.168.0.1必须拥有免密码登录备B:192.168.0.2的权限, 可以设置密钥登录来完成。只需要两条命令即可,下面的命令在主A:192.168.0.1服务器执行: #生成密钥文件 ssh-keygen -t rsa #将公钥拷贝到B服务器 -p 配置是ssh端口 ,输入密码登陆拷贝 Bssh-copy-id root@192.168.0.2 -p 22000 #测试 ssh root@192.168.0.2 -p 22000 2.2 配置lsyncd2.2.1 部分参数说明settings为全局配置,部分参数如下: logfile:日志文件路径 statusFile:进程路径 insist:继续运行,即使有失败的目标。 statusInterval:多少秒写入文件,默认是10s sync为同步配置,部分参数如下: source:本地文件目录 host:远程服务器地址 targetdir:远程目标目录 port:目前主机SSH端口号,默认为22000 2.2.2 配置文件
settings { logfile = "/tmp/lsyncd.log", statusFile = "/tmp/lsyncd.status", insist = true, statusInterval = 10 } sync { default.rsyncssh, source="/home", host="192.168.1.2", targetdir="/home", rsync = { archive = true, compress = false, whole_file = false }, ssh = { port = 220000 } } 继续输入命令 如果没有报错直接退出后输入命令: 相关命令:#启动 systemctl start lsyncd #停止 systemctl stop lsyncd #重启 systemctl restart lsyncd #设置开机自动启动 systemctl enable lsyncd
|