文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

rsync结合inotfiy实现实时备份的问题

2022-06-04 18:17

关注

1. 简介

rsync简介: rsync是linux系统下的数据镜像备份工具。使用快速增量备份工具Remote Sync可以远程同步,支持本地复制,或者与其他SSH、rsync主机同步

Inotify简介: Inotify 是一种强大的、异步的文件系统事件监控机制,通过Inotify可以监控文件系统中添加、删除,修改、移动等各种细微事件,利用这个内核接口,第三方软件就可以监控文件系统下文件的各种变化情况

2. 实验环境:

 

ip地址 角色
192.168.153.180 备份源 sync client + inotify
192.168.153.181 备份端 rsync server

两台机器均关闭防火墙和selinux 关闭防火墙


systemctl stop firewalld

关闭selinux


setenforce 0

3. 配置备份端主机(181主机)

1 安装rsync工具


yum -y install rsync

2 修改rsync配置文件:


vim /etc/rsyncd.conf

修改后内容如下:(!复制之后删掉注释才可使用,不然格式会有问题)


uid=root
gid=root
use chroot = no
max connections = 10
strict modes = yes
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[rsync]
path = /opt  #备份路径
comment = rsync
ignore errors #跳过错误
read only = no #读
write only = no #写
hosts allow = 192.168.153.180 #备份源ip
list = false
auth users = rsync_user  #用户

3 创建密码文件并修改权限 创建文件


echo "rsync_user:123" > /etc/rsync.password

修改权限


chmod 600 /etc/rsync.password

4 启动rsync并查看端口验证

启动


rsync --daemon

验证


netstat -ntlp|grep 873
tcp        0      0 0.0.0.0:873             0.0.0.0:*               LISTEN      1583/rsync          
tcp6       0      0 :::873                  :::*                    LISTEN      1583/rsync  

4. 配置备份源端(180主机)

1 安装epel源和所需工具

先安装epel源


yum -y install  epel-release

再安装所需工具


yum -y install inotify-tools rsync 

2 只需要设置rsync同步密码即可,不用重设用户名 创建文件


echo "123" > /etc/rsync.password

修改权限


chmod 600 /etc/rsync.password 

3 编写inotify监控脚本如下:


vim inotify.sh

#!/bin/bash
ip=192.168.153.181 #备份端ip
src=/opt/rsync_src #数据目录
dst=rsync
user=rsync_user # 用户
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e modify,delete,create,attrib ${src} | while read file
do
rsync -vzrtopg --delete --progress $src $user@$ip::$dst --password-file=/etc/rsync.password > /dev/null && echo "$src was rsyncd"
done

4 创建源目录


mkdir /opt/rsync_src

5 执行脚本检测


sh inotify.sh 

6 新开窗口在源目录下创建文件


cd /opt/rsync_src
echo 111 > 1.txt
echo 222 > 2.txt

7 在备份端查看新创建的两个文件已经同步过来


ls /opt/rsync_src/
1.txt  2.txt

8 在备份源端删除1.txt文件


cd /opt/rsync_src
rm -f 1.txt

在备份端查看已经同步删除


ls /opt/rsync_src/
2.txt

到此这篇关于rsync结合 inotfiy 实现实时备份的文章就介绍到这了,更多相关rsync结合 inotfiy 实现实时备份内容请搜索编程网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持编程网!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯